|
 |
 |
 |
|
"Rób co chcesz, żyj jak chcesz, w to co chcesz wierz, co życie daje bierz, bo to jest życie Twoje a nie moje więc ja nie moge Ci dyktować jak masz żyć a jak nie, tylko Ci mówię - Pokieruj nim rosądnie - tylko Ci mówie, bo tylko tyle mogę"
|
 |
..:: Menu ::.. Strona główna
Informatyka
Internet i jego historia
Systemy Operacyjne
Komputer
Linux
Linki
Kontakt
|
|
..:: Strona Główna ::...
System operacyjny (ang. skrót OS Operating System) – oprogramowanie, które zarządza sprzętem oraz aplikacjami komputera. Podstawą wszystkich systemów operacyjnych jest wykonywanie podstawowych zadań takich jak: kontrolowanie i przypisywanie pamięci, przydział czasu procesora, obsługa urządzeń, ustalanie połączeń sieciowych oraz zarządzanie plikami. Wiele systemów operacyjnych posiada środowiska graficzne ułatwiające ich obsługę.
Określenie to jednak nie jest w pełni ścisłe. Czasem potocznie[potrzebne źródło] mówi się tak mając na myśli całość oprogramowania dostarczanego z zakupionym komputerem (zobacz: dystrybucja), czasem samo jądro systemu operacyjnego, czasem bootloader, czasem z kolei chodzi o całą rodzinę systemów operacyjnych (np. Microsoft Windows).
Zasoby sprzętowe
Zasoby sprzętowe zarządzane przez system operacyjny:
• Procesor – przydział czasu procesora,
• Pamięć
- alokacja przestrzeni adresowej dla procesów,
- transformacja adresów,
• Urządzenia zewnętrzne
- udostępnianie i sterowanie urządzeniami pamięci masowej,
- alokacja przestrzeni dyskowej,
- udostępnianie i sterowanie drukarkami, skanerami, aparatami itp.
• Informacja (system plików)
- organizacja i udostępnianie informacji,
- ochrona i autoryzacja dostępu do informacji.
Zarządzanie zasobami
Zarządzanie zasobami w systemie wielozadaniowym polega na takim ich rozdzieleniu pomiędzy użytkowników, aby każdy z nich miał wrażenie, że pracuje na własnym komputerze.
Główne zadania systemu operacyjnego podczas zarządzania zasobami systemu komputerowego:
- tworzenie deskryptora zasobu,
- usuwanie deskryptora zasobu,
- realizacja żądania przydziału,
- zwolnienie i odzyskiwanie zasobu.
Zarządzanie zasobami systemu komputerowego:
- przydział zasobów,
- synchronizacja dostępu do zasobów,
- ochrona i autoryzacja dostępu do zasobów,
- odzyskiwanie zasobów,
- rozliczanie – gromadzenie danych o wykorzystaniu zasobów.
Zarządzanie procesem – proces to program w stanie uruchomiony, każdy proces wymaga przydziału pewnych zasobów, włączając w to czas procesora, pamięć, pliki oraz urządzenia wejścia/wyjścia, aby w pełni wykonać swoje zadanie. System operacyjny jest odpowiedzialny w fazie zarządzania procesami za:
- tworzenie i usuwanie procesu,
- wstrzymywanie i przywracanie procesu,
- zapewnienie mechanizmów pozwalających na synchronizację procesów oraz komunikację między procesami.
Zarządzanie pamięcią operacyjną – pamięć to duża tablica słów lub bajtów, każda z własnym adresem, pamięć jest szybko dostępna i dzielona jest pomiędzy procesor oraz urządzenia wejścia/wyjścia. Pamięć główna jest ulotnym miejscem przechowywania danych, traci swoją zawartość w czasie awarii systemu. System operacyjny jest odpowiedzialny w fazie zarządzania pamięcią za:
- utrzymywanie informacji która część pamięci jest aktualnie używana i przez kogo,
- decydowania który proces powinien zostać wczytany do pamięci jeżeli pamięć jest wolna,
- przydzielanie i zwalnianie pamięci.
Zarządzanie plikami – plik jest zbiorem informacji zdefiniowanym przez twórcę pliku. Zazwyczaj, pliki reprezentują programy (źródła programów lub pliki wykonywalne) oraz dane. System operacyjny jest odpowiedzialny w fazie zarządzania plikami za:
- tworzenie i kasowanie plików,
- tworzenie i kasowanie katalogów,
- wsparcie dla użytkowników końcowych przy operacjach na plikach,
- mapowanie plików na nośniku danych,
- tworzenie kopii plików.
Zarządzanie wejściem/wyjściem – system wejścia/wyjścia składa się z: systemu buforowania, interfejsu urządzeń głównych, sterowników (kontrolerów) dla specyficznych urządzeń.
Zarządzenie nośnikami danych – pamięć główna jest ulotna i często za mała aby obsłużyć wszystkie programy i dane, dlatego stosuje się nośniki danych (najczęściej dysk twardy) do powiększania tej pamięci tak zwanej pamięć drugiego rzędu, na napędach tych mapuje się pamięć główną. System operacyjny jest odpowiedzialny w fazie zarządzania nośnikami danych za:
- zarządzanie wolną pamięcią,
- alokacją zapisu,
- planowaniem dysku.
Budowa systemu operacyjnego
Przyjęto podział na trzy główne elementy budowy systemu operacyjnego:
* jądro systemu wykonujące ww. zadania,
* powłoka – specjalny program komunikujący użytkownika z systemem operacyjnym,
* system plików – sposób zapisu struktury danych na nośniku.
Typy i przykłady systemów operacyjnych
Amiga
* AmigaOS
* AROS Research Operating System (AROS)
* MorphOS
systemy firmy Apple
* Apple DOS, ProDOS
* GS/OS
* Mac OS
* Mac OS X, Mac OS X Server
* A/UX
* Lisa OS
nieukończone projekty:
* Rhapsody
systemy firmy Be i pochodne
* BeOS
* BeIA
* NewOS/Haiku
* yellowTAB Zeta
systemy firmy Digital (DEC)/Compaq
* AIS
* OS-8
* RSTS/E
* RSX
* RT-11
* TOPS: TOPS-10, TOPS-20
* VMS (później przemianowany na OpenVMS)
systemy firmy IBM
* OS/2
* AIX
* OS/400
* OS/390
* VM/CMS
* DOS/VSE
* DOS/360
* OS/360
* MFT
* MVT
* PC-DOS
* SVS
* MVS
* TPF
* ALCS
* z/OS
systemy firmy Microsoft i pochodne
* MS-DOS
o PC-DOS, DR-DOS, FreeDOS, DOS, QDOS
* Microsoft Windows: 1.0, 2.0, 3.x, 95/98/98 SE/Me, CE, NT/2000/XP/XP SP2/2003/FLP/Vista
o PetrOS, ReactOS
* Singularity
systemy firmy Novell
* NetWare
* Novell DOS
Zobacz też: SuSE Linux
NeXT
* NeXTStep
systemy firmy Unisys
* MCP(Master Control Program)
* OS 2200.
UNIX i jego pochodne
* AIX
* BSD, FreeBSD, NetBSD, OpenBSD, DragonFly BSD, DesktopBSD, PC-BSD
* Digital UNIX
* HP-UX
* IRIX
* Mac OS X
* Minix
* OSF/1
* SCO UNIX
* Sun Solaris (dawniej SunOS)
* System V
* QNX
* Ultrix
* Venix
* Xenix
* GNU/Linux (system GNU z jądrem Linux)
* GNU/Hurd (system GNU z jądrem Hurd),
* Linux
systemy czasu rzeczywistego (realtime systems)
* LynxOS
* OS9
* Phoenix-RTOS
* QNX
* Nut/OS
* RT-Linux
* SenseOS
* VxWorks
* Suse Linux Enterprise Real Time
Inne
* Agnix
* Amoeba
* AtariDOS
* Commodore DOS (zapisany w stacji dysków)
* AtheOS/Syllable
* Athene
* CP/J
* CP/M
* CROOK
* eComStation
* Egzekutor RTX
* EMOS
* EPOC32
* GEORGE 3
* GEOS
* Inferno
* IOS
* iRMX
* ISIS-II
* Kylin
* MenuetOS
* Mikros
* Multics
* Palm OS
* Quarn OS
* SkyOS
* Symbian
* UDOS
* Unununium
* System V7
Systemy operacyjne pracujące na maszynie wirtualnej
Możliwe jest uruchomienie systemu operacyjnego na maszynie wirtualnej. Przykłady to: Argante, Inferno a także User Mode Linux, czyli Linux skonfigurowany w ten sposób, by mógł działać jako system wirtualny w postaci procesu działającego pod kontrolą drugiego Linuksa. Systemy wirtualne dzielone są na para-wirtualne i w pełni wirtualne. Te ostatnie umożliwiają pracę niemodyfikowanego OS2 w środku innego systemu OS1 z pełną, (niemulowaną) szybkością, np. OS2 – Windows Vista wewnątrz OS1 Linuksa z np Xen. Pełna wirtualizacja OS była dostępna od dawna na superkomputerach, nowe instrukcje procesorów rozszerzają ją na komputery osobiste.
Język programowania jako system operacyjny [edytuj]
Funkcję systemu operacyjnego spełniać może Implementacja określonego języka programowania. Miało to miejsce szczególnie w historycznych już czasach dominacji komputerów 8-bitowych. Rolę powłoki systemu operacyjnego spełnia w tym przypadku interpreter poleceń języka. Dlatego funkcję takiego systemu może pełnić implementacja danego języka oparta na interpretacji lub mieszana (interpretacyjno-kompilacyjna).
W komputerach 8-bitowych często interpreter języka był przechowywany w pamięci ROM i stanowił podstawowy system operacyjny. Najbardziej znanym przykładem takiego języka jest BASIC stosowany szeroko w komputerach 8-bitowych. Innym, historycznym już przykładem, jest język Jean, implementowany w dużych systemach komputerowych (np. serii ODRA 1300), który mógł pracować zarówno pod kontrolą innego systemu operacyjnego (np. GEORGE 3), jak również samodzielnie jako mały system operacyjny o charakterze konwersacyjnym.
Językami programowania (a właściwie pewnymi implementacjami języków programowania), które także stanowią samodzielne systemy operacyjne są również FORTH oraz Smalltalk. Język i zarazem system operacyjny FORTH szczególnie zastosowanie znajdował w systemach sterowania automatyki przemysłowej. Jest to najlepszy przykład języka w interpretacyjno-kompilacyjnego, w którym wprowadzane słowa są interpretowane i natychmiast wykonywane, natomiast definicje słów są natychmiast kompilowane. Smalltalk to pierwszy język "czysto obiektowy", który w wielu swoich implementacjach buduje własne środowisko stanowiące system operacyjny komputera.
W systemach serii MERA 300 funkcję systemu operacyjnego mógł pełnić nawet asembler o nazwie MOTIS.
|
 |
|
Copright by Mr^Zielony @2008
|
| |