System operacyjnySystem operacyjny (ang. skrót OS operating system) - jest to zbiór programów pośredniczących pomiędzy aplikacjami użytkownika a sprzętem.
Określenie to nie jest technicznie ścisłe. Czasem potocznie mówi się system operacyjny mając na myśli całość oprogramowania dostarczanego z zakupionym komputerem (zobacz: dystrybucja), czasem samo jądro systemu operacyjnego, czasem z kolei chodzi o całą rodzinę systemów (np. Microsoft Windows).
Zadania systemu operacyjnego
- zarządzanie zasobami komputera, m.in.: procesorem (a dokładniej czasem procesora), pamięcią, urządzeniami peryferyjnymi oraz przydzielanie zasobów procesom,
- koordynacja pracy ww. urządzeń poprzez obsługę przerwań oraz odpowiednie na nie reagowanie,
- ochrona danych i pamięci - tak aby jeden proces, w wyniku błędu lub zamierzonego działania nie mógł zniszczyć lub pozyskać danych innego procesu,
- automatyzacja najczęściej wykonywanych funkcji
- ukrywanie skomplikowania sprzętu komputerowego przez tworzenie abstrakcji, np.
- zbiory zapisanych klastrów na dysku widziane są jako pliki o symbolicznych nazwach
- abstrakcja równoległości wykonywania programów
- jednolity sposób dostępu do urządzeń
System operacyjny jest ładowany do pamięci na początku pracy komputera. Program ten ma bardzo specyficzny charakter: w przeciwieństwie do programów użytkowych (aplikacji) nie korzysta z żadnych gotowych funkcji, tylko sam je udostępnia, a więc od niego zależą rzeczywiste możliwości wykorzystania sprzętu komputerowego.
Wielozadaniowe systemy operacyjne można podzielić na oferujące i pozbawione wywłaszczania. W systemie z wywłaszczaniem jest możliwe przerwanie wykonywania procesu i przeniesienie go z powrotem do kolejki kontrolowanej przez algorytm szeregowania. W systemie bez wywłaszczania zadania muszą przełączać się dobrowolnie. Proces aktywny (wykonujący się) jest przenoszony do kolejki procesów oczekujących tylko wtedy, gdy sam przerwie (wstrzyma, zawiesi) swoje działanie a dopóki tego nie uczyni (lub nie zakończy działania), żaden inny proces nie otrzyma dostępu do procesora.
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
- AmigaOS
- Amiga Research Operating System (AROS)
- MorphOS
systemy firmy Apple
- Mac OS
- Mac OS X
- A/UX
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
- OS/360
- MFT
- MVT
- SVS
- MVS
- TPF
- ALCS
- z/OS
systemy firmy Microsoft i pochodne
- MS-DOS
- PC-DOS, DR-DOS, FreeDOS, NDOS (DOS), QDOS
- Microsoft Windows: Microsoft Windows 1.0, 2.0, 3.x, 95/98/Me, CE, NT/2000/XP/2003/Vista
- PetrOS, ReactOS
systemy firmy Novell
- NetWare
NeXT
- NeXTStep
UNIX i jego pochodne
- AIX
- BSD, FreeBSD, NetBSD, OpenBSD, DragonFly BSD, DesktopBSD, PC-BSD
- Digital UNIX
- HP-UX
- IRIX
- Mac OS X
- OSF/1
- SCO UNIX
- Sun Solaris (dawniej SunOS)
- System V
- QNX
- Ultrix
- Xenix
- GNU/Linux (system GNU z jądrem Linux)
- GNU/Hurd (system GNU z jądrem Hurd),
systemy czasu rzeczywistego (realtime systems)
- Agnix
- OS9
- Phoenix-RTOS
- QNX
- SenseOS
- VxWorks
Inne
- Agnix
- Amoeba
- AtheOS/Syllable
- Athene
- CP/J
- CP/M
- eComStation
- EPOC32
- GEOS
- Inferno
- IOS
- Kylin
- MenuetOS
- MorphOS
- Multics
- Palm OS
- Quarn OS
- SkyOS
- Symbian
- Unununium
- SenseOS
Wirtualne systemy operacyjne
Są to systemy, najczęściej zawarte jeden w drugim (mogące też istnieć osobno), czego przykładem może być Argante, Inferno, lub w bliżej nieokreślonym porównaniu maszyny wirtualne Java, a także User Mode Linux, czyli Linux tak spreparowany, aby mógł działać jako system wirtualny w postaci procesu działającego pod kontrolą drugiego Linuksa.
Zobacz też
- Historia systemu operacyjnego Unix
- testbed
Kategoria:system operacyjny
als:Betriebssystem
zh-min-nan:Chok-gia̍p hē-thóng
ko:운영 체제
ms:Sistem pengoperasian
ja:オペレーティングシステム
simple:Operating system
th:ระบบปฏิบัติการ
Język angielski
Język angielski jest językiem urzędowym w Wielkiej Brytanii, jej terytoriach zależnych i w większości jej byłych kolonii i dominiów, m.in. Irlandii, Stanach Zjednoczonych, Kanadzie, RPA, Australii i Nowej Zelandii. Jest też jednym z sześciu języków oficjalnych ONZ, od XX wieku najczęściej używany język w kontaktach międzynarodowych.
Wszystkie kraje i terytoria z urzędowym angielskim na stronie: Rozprzestrzenienie języków urzędowych
Język angielski jest bardzo mocno zróżnicowany geograficznie.
Dialekty różnią się fonetyką, słownictwem i do pewnego stopnia gramatyką.
Zarys historii
Język angielski wywodzi sie z języków indoeuropejskich, a zatem jest bezpośrednio spokrewniony m.in. z językiem polskim. Świadczy o tym choćby znaczne podobieństwo wielu "podstawowych" słów ("woda"-"water", "być" - "be", "grunt" - "ground", "cierń" - "thorn" itp.) Na kształt języka wielki wpływ miały: chrystianizacja (zapożyczenia z jęz. łacińskiego), inwazja Wikingów w IX wieku n.e. (uproszczenie gramatyki) oraz najazd Normanów w roku 1066 (bardzo liczne zapożyczenia z języka francuskiego). Język angielski w znacznym stopniu zachował średniowieczne tradycje aliteracji stąd częste w nim nazwy i idiomy rozpoczynające sie tą samą literą ("Coca Cola", "Pedigree Pal", "bed & breakfast", "Donald Duck" itp.)
Warto zauważyć, że pomimo, iż jęz. ang. jest obecnie źródłem zapożyczeń na prawie całym świecie, to przez całą swą historię to angielszczyzna tworzona była poprzez wpływ innych języków. Obecnie trend ten został przyhamowany ale wciąż stanowi istotny czynnik rozwoju języka.
Pisownia i fonetyka
Alfabet angielski jest obecnie tożsamy z alfabetem łacińskim i składa się z dwudziestu sześciu liter:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
Pisownia angielska, zwłaszcza samogłosek, jest bardzo nieregularna.
Występuje dość duże geograficzne zróżnicowanie wymowy.
W wielu dialektach znika głoska „r” w wygłosie, zmienia się wymowa niektórych samogłosek.
W angielskim sylaby mają budowę grupa spółgłosek-samogłoska-grupa spółgłosek (CVC), przy czym ostatnia spółgłoska jest bardzo rzadko pomijana. Tak np. sylaby pisane „so”, „no” wymawia się z dodanym końcowym „w” (według polskiej pisowni – „ł”).
W pisowni angielskiej wielkich liter używa się częściej niż w polskiej, choć rzadziej niż w niemieckiej.
Istnieją tablice częstości występowania liter w języku angielskim.
Najpopularniejszymi literami są: „e” (56× tyle, co najrzadsze „q”), „a” (43×), „r” (39×), „i” (38×), „o” (36×), „t” (35×) i „n” (34×).
Jeśli chodzi o dwuliterowe zbitki, to najczęściej pojawiają się „th”, „he”, „in”, „er”.
Gramatyka
Język angielski jest językiem w przeważającej mierze analitycznym. Wyróżnia się dwie liczby rzeczownika, liczba mnoga jest zwykle regularnie tworzona przez sufiks -s lub jeden z jego alomorfów.
Przymiotniki
Przymiotniki odmieniają się tylko przez stopnie – równy, wyższy i najwyższy. Są dwie odmiany: dla krótkich przymiotników używa się odmiany za pomocą sufiksów -er i -est, dla długich za pomocą słów pomocniczych more i most. Niektóre przymiotniki stopniują się nieregularnie. Przed stopniem najwyższym przymiotnika najczęściej stawia się rodzajnik określony the. Tę samą funkcję może również pełnić zaimek dzierżawczy.
| Znaczenie | Stopień równy | Stopień wyższy | Stopień najwyższy |
| Dobry (nieregularny) | good | better | the best |
| Wysoki | tall | taller | the tallest |
| Interesujący | interesting | more interesting | the most interesting |
Czasowniki
Większość czasowników ma pięć form: formę teraźniejszą i przeszłą, imiesłów bierny i czynny, i formę trzeciej osoby liczby pojedynczej. Dwie ostatnie tworzy się regularnie z formy teraźniejszej sufiksami -ing oraz -s. Wyjątki to have (has) oraz be (is)
W odmianie regularnej forma przeszła oraz imiesłów bierny są równe i tworzone z formy teraźniejszej sufiksem -ed. Jest bardzo dużo czasowników nieregularnych w języku angielskim, większość z nich odmienia się jednak według kilku stałych wzorów. Niektóre czasowniki mają więcej niż jedną formę – czasem zależy to od dialektu, w niektórych przypadkach zmienia to znaczenie czasownika.
Przykłady czasowników nieregularnych:
| Znaczenie | Forma teraźniejsza | Forma przeszła | Imiesłów bierny |
| Robić | do | did | done |
| Kłaść | put | put | put |
| Grać (regularny) | play | played | played |
Czasy gramatyczne
W języku angielskim występuje szesnaście czasów. Każdy z czterech podstawowych czasów:
# present
# past
# future
# future in the past
występuje w czterech aspektach czasowych:
# simple
# continuous
# perfect
# perfect continuous
stąd mamy szesnaście kombinacji:
# present
## present simple, np. I do
## present continuous, np. I am doing
## present perfect, np. I have done
## present perfect continuous, np. I have been doing
# past
## past simple, np. I did
## past continuous, np. I was doing
## past perfect, np. I had done
## past perfect continuous, np. I had been doing
# future
## future simple, np. I will do
## future continuous, np. I will be doing
## future perfect, np. I will have done
## future perfect continuous, np. I will have been doing
# future in the past
## future simple in the past, np. I would do
## future continuous in the past, np. I would be doing
## future perfect in the past, np. I would have done
## future perfect continuous in the past, np. I would have been doing
Wyboru czasu gramatycznego w zdaniu dokonuje się w zależności od sytuacji.
Wpływ na język polski
Z języka angielskiego do polskiego przechodzi ogromna ilość wyrazów. Są to głównie terminy naukowo-techniczne (np. "komputer", "laser", itp.) i związane z kulturą masową (np. "hamburger", "baseball", "jazz").
Przyjęły się też pewne angielskie zwroty konwersacyjne – przede wszystkim "OK", "sorry" i, ostatnio, "oops".
Duży chaos panuje w dziedzinie relacji pisownia-wymowa zapożyczanych wyrazów. Istnieją tu aż cztery (czyli, praktycznie, wszystkie możliwe) tendencje. Stosunkowo najrzadziej słowa przejmowane są z priorytetem pisowni ("laser", "bus"). Dużo częściej priorytetem jest wymowa ("interfejs", "lider"). Formą bardzo częstą, lecz zwykle uznawaną za przejściową jest zachowanie zarówno pisowni jak i wymowy angielskiej ("pub", "sequel"). Jednak najczęściej polonizacja tych słów polega na kompromisie dostosowującym dany wyraz do polskich standardów ("komputer", "keczup").
W mniejszym, ale zauważalnym stopniu, język angielski wpływa też na gramatykę języka polskiego. Coraz częściej spotykamy się z "modnym" połączeniem rzeczownik+rzeczownik ("biznes-informacje", "radio konkurs" czy "auto myjnia") zamiast tradycyjnego rzeczownik+przymiotnik ("informacje biznesowe", "konkurs radiowy" czy "myjnia samochodowa"). Warto zauważyć, że konstrukcje te operują najczęściej słowami wyraźnie obcymi ("biznes", "radio", "auto") stąd sądzi się, że raczej nie przyjmą się w standardowej polszczyźnie.
Oczywistym wpływem pozostają kalki językowe, np: "tak szybko jak skończysz", zamiast dawnego: "gdy tylko skończysz" lub "lasy deszczowe".
Interesującym zjawiskiem jest też zmiana sposobu wymawiania zapożyczeń z innych języków na korzyść ich wymowy w jęz. ang, np.: "image" czy "quiz".
Wskazuje się też na niewielki wpływ języka angielskiego na ortografię i interpunkcję polszczyzny: użycie wielkich liter (szczególnie w tytułach i nazwach), wzmożone użycie kursywy, użycie "górnego" cudzysłowu, a także kropki dziesiętnej.
Certyfikaty językowe
Język angielski należy do najpopularniejszych i najczęściej nauczanych języków obcych świata. Istnieje wiele egzaminów zaświadczających znajomość angielskiego na różnych poziomach.
Są to m.in. KET, PET, FCE, CAE, CPE, TOEFL, BEC
Częste błędy
Do częstszych błędów, jakie popełniają obcokrajowcy uczący się języka, jest błędne użycie słów, które choć brzmią podobnie do słów języka ojczystego, mają odmienne znaczenie.
| Polskie słowo | Znaczenie | Podobne angielskie słowo | Znaczenie | Uwagi
|
|---|
| aktualny | current | actual | rzeczywisty
| | aleja | avenue | alley | zaułek, uliczka
| | audycja | broadcast | audition | próba, przesłuchanie
| | bilion | trillion | billion | miliard | W języku angielskim, zwłaszcza w USA, obowiązuje inne nazewnictwo dużych liczb (patrz: Nazwy dużych liczb)
| | ewentualnie | possibly | eventually | w końcu
| | ewidencja | record | evidence | dowód
| | fizyk | physicist | physician | lekarz
| | konfekcja | clothing | confection | wyrób cukierniczy
| | konkurencja | rivalry, competition | concurrence | współpraca, zgodność
| | konsekwentny | consistent | consequent | wynikający
| | konwenans | custom | convenience | wygoda
| | kreatura | scoundrel, contemptible person | creature | stworzenie, istota żywa
| | kwota | amount | quota | limit, udział | Ostatnio media tłumaczą terminy prawa europejskiego typu „milk quota” na „kwota mleczna” itp.
| | lektura | reading matter | lecture | wykład
| | lunatyk | sleepwalker | lunatic | szalony
| | mizeria | cucumber salad | misery | nieszczęście
| | mol (owad) | moth | mole | kret | W chemicznym znaczeniu mole to mol
| | pasta | paste | pasta | makaron | Angielski odpowiednik to rowniez macaroni
| | patetyczny | pompous | pathetic | żałosny
| | paragon | receipt | paragon | ideał, archetyp
| | polityka | politics | policy | plan działania, zasady
| | rejs | cruise, voyage | race | rasa; wyścig; bieg
| | sukcesywny | gradual | successful | zakończony powodzeniem | Istnieje też słowo successive oznaczające kolejny, następujący
| | sympatia | liking | sympathy | współczucie, zrozumienie
| | szkoła publiczna | tuition-free school | public school (brytyjskie) | szkoła prywatna | Amerykańskie public school i private school znaczą odpowiednio: szkoła publiczna i szkoła prywatna
|
Terminy o częściowo pokrywającym się znaczeniu:
| Polskie słowo | Angielskie słowo | Wspólne znaczenie | Tylko polskie
|
|---|
| adapter | adapter | urządzenie przenoszące sygnał między dwoma rodzajami przewodów (lub ogólnie jakieś urządzenie umożliwiające połączenie dwóch różnych standardów) | gramofon
| | mandat | mandate | Upoważnienie | Kara pieniężna
| | narkotyk | narcotic | Środek znieczujający (np. morfina) | Dowolny środek psychotropowy lub uzależniający
| | torpedować | to torpedo | Atakować za pomocą torped | przeciwdziałać udanemu zakończeniu czegoś
|
| Polskie słowo | Angielskie słowo | Wspólne znaczenie | Tylko angielskie
|
|---|
| adresować | to address | kierować do kogoś, umieszczać adres | zająć się jakąś kwestią
| | afera | affair | skandal | sprawa, wydarzenie
| | areszt | arrest | zatrzynie przez policję | dowolne zatrzymanie, np. cardiac arrest to ustanie akcji serca
| | garaż | garage | pomieszczenie lub budynek na samochody | warsztat samochodowy
| | impresja | impression | wrażenie | odcisk; odbitka
| | kamera | camera | urządzenie do nagrywania filmów (video camera) | aparat fotograficzny (still camera)
| | minister | minister | wyższy urzędnik | ministrant
| | papier | paper | materiał uzyskiwany z drewna | praca naukowa
| | student | student | uczeń szkoły wyższej | uczeń dowolnej szkoły
|
Linki zewnętrzne
Strony o angielskim:
- [http://www.angielski.filo.pl Serwis języka angielskiego]
- [http://www.EnglishTensesWithCartoons.com Strona poświęcona czasom angielskim]
- [http://www.angielski.edu.pl Serwis użytkowników angielskiego - codzienne lekcje, testy]
- [http://www.uczsie.pl Angielski na co dzień, nauka słówek]
- [http://www.bbc.co.uk/polish/learningenglish/ Angielski z BBC]
Słowniki:
- [http://www.Angool.com Angool.com - Darmowy Słownik Angielski onLine]
- [http://www.dictionary.pl/ Dictionary.pl - słownik polsko-angielski, angielsko-polski]
- [http://www.ling.pl Słownik wielojęzyczny] Ling
- [http://www.dict.pl Dwukierunkowy słownik polsko-angielski] e-DICT
- [http://portalwiedzy.onet.pl/tlumacz.html Słownik polsko-angielski (Onet)]
- [http://www.multislownik.pl/modules/multi/ MultiSłownik (De Agostini)]
- [http://dictionary.cambridge.org/ Słownik języka angielskiego (Cambridge)]
- [http://www.m-w.com/ Słownik języka angielskiego (Merriam-Webster)]
- [http://www.askoxford.com/dictionaries/ Słownik języka angielskiego (Oxford)]
Angielski
als:Englische Sprache
zh-min-nan:Eng-gí
ko:영어
ms:Bahasa Inggeris
ja:英語
simple:English language
th:ภาษาอังกฤษ
Jądro systemu operacyjnegoJądro systemu operacyjnego (ang. kernel) - to jego podstawowa część, która jest odpowiedzialna za wszystkie jego zadania.
Budowa jądra
Wyróżniamy kilka podstawowych metod konstrukcji jąder:
- jądro monolityczne - często stosowane w systemach typu Unix. Wszystkie zadania są wykonywane przez jądro, będące jednym, dużym programem działającym w trybie jądra. Przykładem takiego jądra jest jądro systemu Linux, OpenBSD, FreeBSD a także Windows, chociaż większość posiada umiejętność dołączania i odłączania modułów (najczęściej zawierających kod sterownika urządzenia lub obsługi potrzebnego w danej chwili systemu plików). Zaletą tej techniki jest prostota, stabilność, łatwość komunikacji pomiędzy różnymi członami jądra (to przecież w tym wypadku jeden program!). Wadą jest, w późniejszym stadium rozwoju projektu, uciążliwość w rozwijaniu programu oraz w znajdywaniu błędów.
- mikrojądro - w tej technice z monolitycznego jądra zostaje tylko jego podstawowa część, a części odpowiedzialne za bardziej wyrafinowane funkcje są wydzielone do funkcjonalnych bloków albo realizowane jako zwykłe procesy w trybie użytkownika.
- nanokernel - technika zbliżona do techniki mikrojądra, różnica w wielkości - nanokernel jest jeszcze mniejszy.
- exokernel - architektura będąca odmianą nanojądra. Cechą wyróżniającą jest możliwość zarządzania zasobami systemu przez nieuprzywilejowanego użytkownika, a rola jądra sprowadza się do zabezpieczania zasobów. Przykładem systemu korzystającego z tego typu jądra jest system XOK, zbudowany w MIT Laboratory for Computer Science, pracujący na komputerach PC. Wyposażony on został w bibliotekę ExOS, która implementuje system UNIX i umożliwia uruchamianie większości aplikacji tego systemu.
- cachekernel - w tej technice jądro systemu buforuje obiekty systemowe takie jak wątki czy przestrzenie adresowe tak jak sprzęt komputerowy buforuje pamięć. Jądra aplikacji trybu użytkownika są odpowiedzialne za ładowanie tych danych i ponowne ich zapisanie stosując specyficzne dla danej aplikacji mechanizmy.
Cechy jądra
Z budowy jądra wynikają jego cechy, takie jak:
- wielozadaniowość (wieloprocesowość),
- wielowątkowość,
- wielobieżność,
- skalowalność,
- to, czy jądro jest wywłaszczalne.
Zastosowanie systemów operacyjnych
Zastosowanie systemów operacyjnych wynika ściśle z ich budowy, a to przeważnie sprowadza się do budowy ich jądra. Tak więc:
- jako serwery lub zapory sieciowe używa się przeważnie systemów z jądrem monolitycznym, czyli np. systemów uniksowych,
- w telekomunikacji i wszędzie tam, gdzie należy spełnić duże wymagania czasowe, decydującą rolę odgrywają systemy operacyjne czasu rzeczywistego , takie jak na przykład QNX,
- w wielu urządzeniach działają systemy określane mianem embedded (osadzone), które charakteryzują się wysoką skalowalnością.
Przykłady jąder systemów operacyjnych
Jądra monolityczne:
- Tradycyjne jądra UNIX, jak np. jądra systemów BSD
- Linux [http://kernel.org]
- Jądra edukacyjne takie jak Agnix
Mikrojądra:
- [http://www-1.ibm.com/servers/aix/ AIX]
- [http://www.cs.vu.nl/pub/amoeba/ Amoeba]
- [http://www.crhc.uiuc.edu/~dstott/ukernels/chorus.html Chorus microkernel]
- [http://www.eros-os.org/ EROS]
- [http://www.research.ibm.com/K42 K42]
- [http://etudiant.epita.fr/~lse/ LSE/OS] (nanojądro)
- [http://www.cis.upenn.edu/~KeyKOS/ KeyKOS] (nanojądro)
- [http://www.l4hq.org/ L4]
- Mach, wykorzystywany w systemach GNU Hurd i Mac OS X
- MERT
- Minix
- MorphOS
- Phoenix-RTOS
- QNX
- [http://radios.sourceforge.net/ RadiOS]
Kategoria:Jądro systemu operacyjnego
ko:커널 (컴퓨터)
ja:カーネル
Procesor
Procesor (ang. processor) - urządzenie cyfrowe sekwencyjne potrafiące pobierać dane z pamięci, interpretować je i wykonywać jako rozkazy. Wykonuje on bardzo szybko ciąg prostych operacji (rozkazów) wybranych ze zbioru operacji podstawowych określonych zazwyczaj przez producenta procesora jako lista rozkazów procesora.
Procesor wykonywany jest zwykle jako układ scalony zamknięty w hermetycznej obudowie posiadającej złocone wyprowadzenia. Złoto jest konieczne, aby zmniejszyć pojemności pasożytnicze połączeń. Jego sercem jest monokryształ krzemu, na który naniesiono techniką fotolitografii szereg warstw półprzewodnikowych. Tworzą one sieć od kilku do kilkudziesięciu milionów tranzystorów. Połączenia wykonane są z metalu (aluminium, miedź). Ważnym parametrem procesora jest rozmiar elementów budujących jego strukturę. Im są one mniejsze tym niższe jest zużycie energii, napięcie pracy oraz wyższa częstotliwość pracy. Współczesne procesory wykonywane są w technologii pozwalającej na uzyskanie elementów o rozmiarach mniejszych niż 90 nm pracujących z częstotliwością 2 GHz. Fabryki procesorów muszą posiadać pomieszczenia o niezwykłej czystości, co jest bardzo kosztowne.
W funkcjonalnej strukturze procesora można wyróżnić:
- zespoł rejestrów do przechowywania danych i wyników, rejestry mogą być ogólnego przeznaczenia, lub mają specjalne przeznaczenie,
- jednostkę arytmetyczną (arytmometr) do wykonywania operacji obliczeniowych na danych,
- układ sterujący przebiegiem wykonywania programu.
Jedną z podstawowych cech procesora jest długość (liczba bitów) słowa, na którym wykonywane są podstawowe operacje obliczeniowe. Jeśli słowo ma np. 32 bity, mówimy że procesor jest 32-bitowy.
Innym ważnym parametrem określającym procesor jest szybkość z jaką wykonuje on program. Szybkość ta w znacznym stopniu zależy od czasu trwania pojedynczego taktu procesora, jest on odwrotnością częstotliwości procesora.
Do typowych rozkazów wykonywanych przez procesor należą:
- kopiowanie danych
- z pamięci do rejestru
- z rejestru do pamięci
- z pamięci do pamięci (niektóre procesory)
- (podział ze względu na sposób adresowania danych)
- działania arytmetyczne
- dodawanie
- odejmowanie
- porównywanie dwóch liczb
- dodawanie i odejmowanie jedności
- zmiana znaku liczby
- działania na bitach
- iloczyn logiczny - AND
- suma logiczna - OR
- suma modulo 2 (różnica symetryczna) - XOR
- negacja - NOT
- przesunięcie bitów w lewo lub prawo
- skoki
- bezwarunkowe
- warunkowe
Komputer oprócz procesora głównego (CPU) posiada procesory pomocnicze: obrazu (GPU), dźwięku, koprocesory arytmetyczne.
Procesor bywa też nazywany jednostką centralną (poprzez tłumaczenie ang. CPU, Central Processing Unit w sposób dosłowny) - to określenie przyjęło się jedynie w wąskim gronie informatyków. Większość ludzi jednostkę centralną kojarzy z handlowym terminem określającym jednostką systemową komputera złożoną z elementów takich jak procesor, płyta główna, karta rozszerzenia, pamięć operacyjna, dysk twardy zamkniętych we wspólnej obudowie, nie obejmującą takich urządzeń peryferyjnych jak monitor, klawiatura czy drukarka.
Zobacz też
- mikroprocesor, jednostka systemowa
- producenci procesorów: Fujitsu, AMD, Intel, IBM, Freescale (dawniej jako Motorola), Texas Instruments
- ZIF
-
ko:중앙처리장치
ms:Unit Pemproses Pusat
ja:CPU
th:หน่วยประมวลผลกลาง
Pamięć komputerowa
Pamięć komputerowa to te części komputera, które przechowują dane.
Pamięci dzieli się ze względu na:
- ulotność:
- pamięci ulotne przechowują dane tak długo, jak długo są zasilane,
- pamięci nieulotne zachowują informację po odłączeniu zasilania.
- możliwości zapisu i odczytu:
- tylko do odczytu (zapis odbywa się w fazie produkcji),
- jednokrotnego zapisu,
- wielokrotnego zapisu.
- nośnik:
- półprzewodnikowy (układ scalony),
- optyczny,
- magnetyczny (w tym pamięć ferrytowa),
- magnetooptyczny,
- polimerowy (np. Millipede),
- papierowy (np. karta dziurkowana),
- linia opóźniająca (np. pamięć rtęciowa).
- łatwość (możliwość) przeniesienia wraz z zapisem do innego urządzenia,
- miejsce w konstrukcji komputera:
- rejestry procesora,
- pamięć robocza (z angielskiego: operacyjna), czyli RAM,
- pamięć podręczna, czyli cache,
- pamięć zewnętrzna, czyli masowa (stacje dysków, taśm itp),
- pamięć robocza podzespołów (np. rejestry stanu urządzenia, bufory w kartach sieciowych, bufor wysyłanego lub odebranego znaku w łączu szeregowym, pamięć obrazu w kartach grafiki),
- sposób dostępu do informacji:
- pamięć o dostępie swobodnym,
- pamięć o dostępie szeregowym (cyklicznym) (rejestry przesuwne, pamięć taśmowa),
- pamięć skojarzeniowa (asocjacyjna).
Urządzenia zaliczane do kategorii pamięci
- taśmy i karty dziurkowane (obecnie już praktycznie nieużywane),
- karty magnetyczne (także o znaczeniu historycznym),
- taśmy magnetyczne na szpulach i w kasetach,
- bębny,
- dyski twarde (magnetyczne),
- dyski optyczne:
- CD-ROM,
- CD-R,
- CD-RW,
- DVD,
- DVD-R,
- DVD-RW,
- DVD+R,
- DVD+RW.
- dyskietki,
- dyski magnetooptyczne,
- rejestry procesora,
- pamięć cache,
- pamięć operacyjna aktualnie RAM i jej różne odmiany PRAM, MRAM, FRAM,
- ROM - Read-Only Memory (pamięć tylko do odczytu),
- PROM - Programmable Read-Only Memory (programowalna pamięć tylko do odczytu),
- EPROM - Erasable-Programmable Read-Only Memory (kasowalno-programowalna pamięć tylko do odczytu (kasowana światłem UV),
- EEPROM - Electrically Erasable-Programmable Read-only Memory (elektrycznie kasowalno-programowalna pamięć tylko do odczytu (kasowana elektrycznie),
- Flash EEPROM (Błyskawicznie działająca elektrycznie kasowalno-programowalna pamięć tylko do odczytu kasowana elektrycznie).
Zazwyczaj cena pamięci jest związana z jej szybkością. Im szybsza tym droższa. Dlatego stosuje się przeróżne techniki przenoszenia informacji pomiędzy pamięciami, aby zapewnić możliwie dużą prędkość dostępu do danych przy ograniczonych zasobach najszybszych pamięci. Dane aktualnie używane są trzymane w szybszej pamięci, natomiast te aktualnie niepotrzebne w wolniejszej. Ponieważ różnice w czasie dostępu między kolejnymi poziomami są często rzędu 10:1, dobre wykorzystanie właściwości pamięci cache ma zazwyczaj większe znaczenie niż liczba cykli procesora koniecznych do wykonania algorytmu.
Poniżej, najpopularniejsze rodzaje pamięci używane w komputerach (uszeregowane od najszybszej)
- rejestry procesora, rozmiar rzędu kilkudziesieciu do kilkuset bajtów,
- pamięć podręczna procesora (cache L1), wbudowany w procesor, rozmiar rzędu 4 do 16 KB,
- pamięć podręczna procesora (cache L2), rozmiar rzędu 128 KB do 4 MB,
- pamięć RAM, rozmiar rzędu 128 MB do kilku GB,
- plik wymiany (swap) na dysku twardym, rozmiar rzędu kilkudziesięciu MB do kilku GB (definiowany przez użytkownika lub system).
Na poziomie logicznym pamięć jest to zbiór komórek, zapisanych ciągiem zero-jedynkowym o określonej długości (taki ciąg nazywamy słowem). Komórki pamięci są ponumerowane, a numer komórki nazywa się adresem. Procesor komunikuje się z pamięcią operacyjną i wykonuje rozkazy pobrane z programu zawartego w pamięci.
Kategoria:Pamięci komputerowe
ko:기억장치
ms:Storan komputer
ja:記憶装置
th:หน่วยความจำ
Urządzenie wejścia-wyjściaUrządzenie wejścia-wyjścia, urządzenie we/wy, urządzenie I/O (ang. input/output device) służy do komunikacji komputera z użytkownikiem, komputerem lub innym urządzeniem.
Niektóre z tych urządzeń są typowymi urządzeniami wejścia, inne wyjścia, pozostałe natomiast jednocześnie wejścia i wyjścia.
- typowe urządzenia wejścia to np.: klawiatura, mysz komputerowa oraz czytniki nośników danych
- typowe urządzenia wyjścia to np.: monitor, drukarka
- typowe urządzenia wejścia i wyjścia to np.: karta sieciowa, modem, dysk twardy oraz wszelkie inne nagrywalne stacje nośników danych
Część urządzeń wejścia-wyjścia znajduje się wewnątrz obudowy jednostki centralnej komputera, często nawet bezpośrednio na płycie głównej. Natomiast te urządzenia we/wy, które są przypięte do komputera za pomocą kabli lub komunikują się z komputerem w inny sposób (np. falami radiowymi lub za pomocą podczerwieni), zwane są peryferiami komputerowymi.
Zobacz też: interfejs.
Kategoria:Sprzęt komputerowy
Proces (informatyka)Proces - to jedno z najbardziej podstawowych pojęć w informatyce. Z definicji jest to po prostu egzemplarz wykonywanego programu. Należy odróżnić jednak proces od wątku - każdy proces posiada własną przestrzeń adresową, natomiast wątki posiadają wspólną sekcję danych.
Każdemu procesowi przydzielone zostają zasoby, takie jak:
- procesor
- pamięć
- dostęp do urządzeń wejścia-wyjścia
- pliki
Każdy proces posiada tzw. "rodzica". W ten sposób tworzy się swego rodzaju drzewo procesów. Proces może (ale nie musi) mieć swoje procesy potomne.
Za zarządzanie procesami odpowiada Jądro systemu operacyjnego.
Wykonanie musi przebiegać sekwencyjnie. Może przyjmować kilka stanów:
- działający,
- czekający na udostępnienie przez system operacyjny zasobów,
- przeznaczony do zniszczenia,
- właśnie tworzony itd.
- proces zombie
W skład procesu wchodzi:
- kod programu
- licznik rozkazów
- stos
- sekcja danych
Tworzenie procesów
- użytkownik za pomocą powłoki zleca uruchomienie programu, proces wywołujący wykonuje polecenie fork, lub jego pochodną
- System operacyjny tworzy przestrzeń adresową dla procesu, oraz strukturę opisującą nowy proces
- wypełnia strukturę opisującą proces
- kopiuje do przestrzeni adresowej procesu dane i kod, zawarte w pliku wykonywalnym
- ustawia stan procesu na działający
- dołącza nowy proces do kolejki procesów oczekujących na procesor
- zwraca sterowanie do powłoki użytkownika
Wykonywanie procesów
Dany proces rozpoczyna wykonywanie w momencie przełączenia przez Jądro systemu operacyjnego przestrzeni adresowej na przestrzeń adresową danego procesu oraz takie zaprogramowanie procesora, by wykonywał kod procesu. Wykonujący się proces może żądać pewnych zasobów, np. większej ilości pamięci. Zlecenia takie są na bieżąco realizowane przez system operacyjny.
Kończenie procesów
- proces wykonuje ostatnią instrukcję - zwraca do systemu operacyjnego kod zakończenia. Jeśli proces zakończył się poprawnie zwraca wartość 0, w przeciwnym wypadku zwraca wartość kodu błędu.
- w momencie zwrotu do systemu operacyjnego kodu zakończenia, system operacyjny ustawia stan procesu na przeznaczony do zniszczenia i rozpoczyna zwalnianie wszystkich zasobów, które w czasie działania procesu zostały temu procesowi przydzielone.
- system operacyjny po kolei kończy wszystkie procesy potomne w stosunku do procesu macierzystego.
- system operacyjny zwalnia przestrzeń adresową procesu. Jest to dosłowna śmierć procesu.
- system operacyjny usuwa proces z kolejki procesów gotowych do uruchomienia i szereguje zadania. Jest to ostatnia czynność wykonywana na rzecz procesu.
- procesor zostaje przydzielony innemu procesowi.
Sposób realizacji wszystkich tych działań jest różny dla różnych systemów operacyjnych.
Zobacz też
- wielowątkowość
- wielozadaniowość
- wieloprocesowość
- informatyka
kategoria:system operacyjny
ja:プロセス
AbstrakcjaAbstrakcja (filozofia)
Aplikacja (informatyka)Aplikacja to rodzaj programu komputerowego.
Termin nie jest określony zbyt precyzyjnie, ale zazwyczaj oznacza program, który ma bezpośredni kontakt z użytkownikiem i nie jest częścią większego programu. Z technicznego punktu widzenia jest to oprogramowanie korzystające z usług systemu operacyjnego.
Aplikacje to m.in. menedżery plików, oprogramowanie biurowe
(edytory, arkusze kalkulacyjne,
programy magazynowo/finansowe) oraz gry, ale także strony WWW napisane z użyciem języków PHP, ASP, JSP i innych.
W przeciwieństwie do wielu innych rodzajów oprogramowania, takich jak
systemy operacyjne, oprogramowanie serwerowe czy naukowo-obliczeniowe,
większość aplikacji przez długi czas była udostępniana jedynie na zasadach ograniczonych, w szczególności bez dostępu do kodu źródłowego i często za opłatą.
W ostatnich latach ta sytuacja uległa zmianie i wiele rodzajów aplikacji jest dostępnych na zasadach Open Source.
Kategoria:Oprogramowanie
WywłaszczanieWywłaszczanie - to cecha wielozadaniowego systemu operacyjnego polegająca na odebraniu danemu procesowi dostępu do procesora. Dzięki temu rozwiązaniu zawieszenie jednego procesu nie powoduje blokady całego systemu operacyjnego. Oprócz tego wywłaszczanie umożliwia
szczegółowe określanie czasu, w jakim dany proces może korzystać z procesora. Wywłaszczanie, w niektórych systemach operacyjnych może dotyczyć także samego jądra - przykładem takiego systemu jest Linux.
Wielozadaniowe systemy operacyjne z możliwością wywłaszczania procesów:
- FreeBSD
- Linux
- Mac OS X
- NetBSD
- OpenBSD
- Windows NT
- inne
Kategoria:System operacyjny
Algorytm szeregowaniaAlgorytm szeregowania (ang. scheduler, planista) to część wielozadaniowego systemu operacyjnego, odpowiedzialna za ustalanie kolejności dostępu procesów do procesora.
Zwykle jest umieszczany w jądrze systemu, jednak nie zawsze. Ponieważ jego celem jest jedynie ustawianie listy zadań kierowanych do wykonywania a nie samo ich kierowanie, może być jednym ze zwykłych zadań, spełniającym usługę dla jądra. Taką sytuację można spotkać w systemach opartych o mikrojądro.
Planista musi także uwzględniać priorytety procesów i ich gotowość do wykonania oraz przeciwdziałać zagłodzeniu procesu poprzez przedłużający się brak dostępu do zasobów oraz tzw. inwersji priorytetów.
W systemach operacyjnych czasu rzeczywistego (stosowanych m. in. w automatyce) najważniejszym zadaniem algorytmu szeregowania jest zapewnienie, by wykonanie danego procesu zakończyło się przed upływem zdefiniowanych dla niego ograniczeń czasowych. Opracowano w tym celu deterministyczne algorytmy szeregowania, takie jak RMS, EDF i inne.
Wyróżnić można dwa typy planistów:
- Planista długoterminowy wybiera procesy z pamięci masowej i ładuje do pamięci operacyjnej.
- Planista krótkoterminowy odpowiada za ustalanie kolejności wykonywania procesów gotowych do wykonania. Musi być on bardzo szybki, w przeciwieństwie do planisty długoterminowego.
Rodzaje algorytmów szeregowania
- FCFS (first come, first served) - Bardzo podobny do kolejki FIFO - Pierwszy przyjdzie, pierwszy wykonany. Algorytm ten dokonuje najsprawiedliwszego przydziału czasu (każdemu według potrzeb), jednak powoduje bardzo słabą interakcyjność systemu - pojedynczy długi proces całkowicie blokuje system na czas swojego wykonania. Odmianą tego algorytmu z podziałem czasu jest round-robin (patrz niżej). Algorytm ten był stosowany z powodzeniem w systemach wsadowych, gdzie operator ładował zadania do wykonania, a one wykonywały się do skutku.
- SJF (shortest job first) - Najpierw najkrótsze zadanie. Jest algorytmem optymalnym - najkrótszy średni czas oczekiwania. W wersji wywłaszczającej stosowana jest metoda: najpierw najkrótszy pozostały czas. Problemem tego algorytmu jest głodzenie długich procesów - może się zdarzyć, że cały czas będą nadchodzić krótsze procesy, a wtedy proces dłuższy nigdy nie zostanie wykonany.
- Planowanie priorytetowe - wybierany jest proces o najwyższym priorytecie. W tej metodzie występuje problem nieskończonego blokowania (procesu o niskim priorytecie przez procesy o wysokim priotytecie). Stosuje się tu postarzanie procesów, polegające na powolnym podnoszeniu priorytetu procesów zbyt długo oczekujących.
- Planowanie rotacyjne (round-robin) - Planista przydziela każdemu z procesów kwant czasu i jeżeli nie zdąży się wykonać to ląduje na końcu kolejki FCFS.
- Planowanie wielopoziomowe - dzieli procesy na kolejki procesów interakcyjnych (pierwszoplanowe) oraz wsadowych (drugoplanowe). Każda z kolejek posiada własnego planistę.
- Planowanie wielopoziomowych kolejek ze sprzężeniem zwrotnym - jw. przy czym umożliwia zmianę kolejki
- Planowanie wieloprocesorowe - na jednakowe procesory i na różne procesory
Zobacz też
- Wywłaszczanie
- Podział czasu
kategoria:system operacyjny
kategoria:algorytmy
Jądro systemu operacyjnegoJądro systemu operacyjnego (ang. kernel) - to jego podstawowa część, która jest odpowiedzialna za wszystkie jego zadania.
Budowa jądra
Wyróżniamy kilka podstawowych metod konstrukcji jąder:
- jądro monolityczne - często stosowane w systemach typu Unix. Wszystkie zadania są wykonywane przez jądro, będące jednym, dużym programem działającym w trybie jądra. Przykładem takiego jądra jest jądro systemu Linux, OpenBSD, FreeBSD a także Windows, chociaż większość posiada umiejętność dołączania i odłączania modułów (najczęściej zawierających kod sterownika urządzenia lub obsługi potrzebnego w danej chwili systemu plików). Zaletą tej techniki jest prostota, stabilność, łatwość komunikacji pomiędzy różnymi członami jądra (to przecież w tym wypadku jeden program!). Wadą jest, w późniejszym stadium rozwoju projektu, uciążliwość w rozwijaniu programu oraz w znajdywaniu błędów.
- mikrojądro - w tej technice z monolitycznego jądra zostaje tylko jego podstawowa część, a części odpowiedzialne za bardziej wyrafinowane funkcje są wydzielone do funkcjonalnych bloków albo realizowane jako zwykłe procesy w trybie użytkownika.
- nanokernel - technika zbliżona do techniki mikrojądra, różnica w wielkości - nanokernel jest jeszcze mniejszy.
- exokernel - architektura będąca odmianą nanojądra. Cechą wyróżniającą jest możliwość zarządzania zasobami systemu przez nieuprzywilejowanego użytkownika, a rola jądra sprowadza się do zabezpieczania zasobów. Przykładem systemu korzystającego z tego typu jądra jest system XOK, zbudowany w MIT Laboratory for Computer Science, pracujący na komputerach PC. Wyposażony on został w bibliotekę ExOS, która implementuje system UNIX i umożliwia uruchamianie większości aplikacji tego systemu.
- cachekernel - w tej technice jądro systemu buforuje obiekty systemowe takie jak wątki czy przestrzenie adresowe tak jak sprzęt komputerowy buforuje pamięć. Jądra aplikacji trybu użytkownika są odpowiedzialne za ładowanie tych danych i ponowne ich zapisanie stosując specyficzne dla danej aplikacji mechanizmy.
Cechy jądra
Z budowy jądra wynikają jego cechy, takie jak:
- wielozadaniowość (wieloprocesowość),
- wielowątkowość,
- wielobieżność,
- skalowalność,
- to, czy jądro jest wywłaszczalne.
Zastosowanie systemów operacyjnych
Zastosowanie systemów operacyjnych wynika ściśle z ich budowy, a to przeważnie sprowadza się do budowy ich jądra. Tak więc:
- jako serwery lub zapory sieciowe używa się przeważnie systemów z jądrem monolitycznym, czyli np. systemów uniksowych,
- w telekomunikacji i wszędzie tam, gdzie należy spełnić duże wymagania czasowe, decydującą rolę odgrywają systemy operacyjne czasu rzeczywistego , takie jak na przykład QNX,
- w wielu urządzeniach działają systemy określane mianem embedded (osadzone), które charakteryzują się wysoką skalowalnością.
Przykłady jąder systemów operacyjnych
Jądra monolityczne:
- Tradycyjne jądra UNIX, jak np. jądra systemów BSD
- Linux [http://kernel.org]
- Jądra edukacyjne takie jak Agnix
Mikrojądra:
- [http://www-1.ibm.com/servers/aix/ AIX]
- [http://www.cs.vu.nl/pub/amoeba/ Amoeba]
- [http://www.crhc.uiuc.edu/~dstott/ukernels/chorus.html Chorus microkernel]
- [http://www.eros-os.org/ EROS]
- [http://www.research.ibm.com/K42 K42]
- [http://etudiant.epita.fr/~lse/ LSE/OS] (nanojądro)
- [http://www.cis.upenn.edu/~KeyKOS/ KeyKOS] (nanojądro)
- [http://www.l4hq.org/ L4]
- Mach, wykorzystywany w systemach GNU Hurd i Mac OS X
- MERT
- Minix
- MorphOS
- Phoenix-RTOS
- QNX
- [http://radios.sourceforge.net/ RadiOS]
Kategoria:Jądro systemu operacyjnego
ko:커널 (컴퓨터)
ja:カーネル
Powłoka systemowaPowłoka systemowa - (ang. shell) to program komputerowy pełniący rolę pośrednika pomiędzy
systemem operacyjnym lub aplikacjami a użytkownikiem, przyjmując jego polecenia i "wyprowadzając" wyniki działania programów. Owo pośrednictwo nie jest obowiązkowe (programy mogą chcieć być bardziej "samodzielne"). Wyróżniamy powłoki tekstowe np.:
- bash - Bourne Again Shell (znów powłoka Bourne'a)
- ksh - Korn Shell
- zsh
- sh
- csh
- command.com - procesor poleceń systemu DOS
oraz graficzne, takie jak np.:
- GNOME, a dokładniej Nautilus lub GMC
- KDE, a dokładniej Konqueror
- finder - powłoka systemu Mac OS
- explorer - powłoka systemu Microsoft Windows.
Powłoka często sama zawiera podstawowe polecenia, gdy jednak wydane przez
użytkownika polecenie nie jest wbudowane, uruchamiany jest program
zewnętrzny.
Po zalogowaniu użytkownik znajduje się w linii poleceń i
może wydawać polecenia systemowi. Zachęca go do tego tzw,
znak zachęty (shell prompt). Zwykle znak '>', '$' lub '#'.
Kategoria:powłoki systemowe
System plikówSystem plików – metoda przechowywania plików, zarządzania plikami, informacjami o tych plikach, tak by dostęp do plików i danych w nich zgromadzonych był łatwy dla użytkownika systemu.
Systemy plików stosuje się dla różnych nośników danych, takich jak dyski, dyskietki, a także w strumieniach danych, sieciach komputerowych, pamięciach. We współczesnych systemach operacyjnych bezpośrednie operowanie na danych w plikach zarezerwowane jest tylko dla systemu operacyjnego, aplikacje mają dostęp tylko do operacji na plikach i mają zabroniony bezpośredni dostęp do nośnika danych.
Z formalnego punktu widzenia system plików to reguły umieszczanie na nośniku danych abstrakcyjnych danych oraz informacji umożliwiających przechowywanie tych danych, łatwy i szybki dostęp do informacji o danych oraz do tych danych, manipulowania nimi a także sposobach usuwania ich.
Większość systemów operacyjnych posiada własny (macierzysty) system plików, rozwijany równolegle z nim (np. FAT w DOS-ie, NTFS w Microsoft Windows NT lub ext/ext2/ext3 i ReiserFS/Reiser4 w Linuksie), ze względu na pewne specyficzne właściwości nadawane plikom (np. atrybut wykonywalności pliku), podobnie jak niektóre nośniki danych (np. ISO 9660 na CD-ROM i UDF na DVD), jednak sam system plików jest niezależny od nich. Same systemy operacyjne (w szczególności Unix i jego pochodne) potrafią obsługiwać wiele systemów plików.
Organizacja danych
Nośniki danych, takie jak dyski twarde, dyskietki posiadają blokową strukturę danych, znaczy to, że dane są w nich przechowywane w postaci bloków, a blok musi być w całości zapisywany i odczytywany, bloki te nazywane są sektorami). W przypadku dysków i dyskietek mają taką samą wielkość (przeważnie 512 bajtów).
Bloki tworzą strukturę liniową:
Systemy operacyjne łączą bloki w klastry. Klaster składa się z kilku bloków (w nowszych systemach może to być 8 lub więcej bloków).
Dyskowy system plików część pamięci wykorzystuje na tzw. sektor rozruchowy (boot sector), który nie stanowi zasadniczej części systemu plików i jest używany do rozruchu systemu. Ponadto systemy plików przechowują listy wszystkich klastrów (oraz informacje do których plików one należą) w tzw. tablicach alokacji.
Przykład alokacji w linuksowym systemie plików ext2:
Struktura grupy bloków (n - liczba bloków):
Podstawowe operacje
Jeżeli program chce wykonać jakąś operację na pliku robi to poprzez system plików. W systemie Unix oraz jego pochodnych takie operacje realizowane są za pomocą wywołań systemowych. Wywołania te są przychwytywane przez wirtualny system plików (VFS), odpowiednio przetwarzane i kierowane do zasadniczego systemu plików. Zastosowanie wirtualnego systemu plików podowuje, że program stosuje te same wywołania systemowe niezależnie od systemu plików.
Do najbardziej podstawowych wywołań systemowych należą:
- otwieranie pliku (open)
- zamykanie pliku (close)
- tworzenie pliku (create)
- usuwanie pliku (unlink)
- tworzenie katalogu (mkdir)
- usuwanie katalogu (rmdir)
- czytanie z pliku (read)
- pisanie do pliku (write)
Hierarchia systemu plików
Prymitywne systemy plikowe posiadały jedną listę plików wchodzących w skład systemu plików.
W miarę postępu systemy plików zostały unowocześnione i współczesne systemy plików oprócz głównej listy (katalogu głównego) zawierają także podlisty (podkatalogi) które również mogą zawierać dalsze podlisty (podkatalogi). W ten sposób rozwinęło się pojęcie katalogów nadrzędnych oraz katalogów podrzędnych.
Katalog, w którym znajduje się plik jest nadrzędny (bezpośrednio) względem tego pliku.
Katalog jest podrzędny (bezpośrednio) względem innego katalogu w którym się znajduje.
W ten sposób powstało pojęcie drzewiastej hierarchi systemu plików, w której każdy katalog może zawierać podkatalogi, które mogą zawierać dalsze podkatalogi. Powstaje w ten sposób struktura, która wygląda jak "odwrócone drzewo".
Systemy, które mają taką strukturę nazywają się hierarchicznymi systemami plików.
W takich systemach plik identyfikowany jest nie tylko na postawie unikalnej nazwy ale również ścieżki dostępu:
Windows 2000/XP: Unix / Linux:
[Dysk C:] [Katalog główny]
+- boot.ini +- [boot]
| +- [etc]
+- [Documents and Settings] +- [home]
| +- [ciapek] | +- [ciapek]
| +- [moje dokumenty] | +- [filmy]
| +- [filmy] | | +- twierdza.avi
| | +- twierdza.avi | |
| | | +- [dokumenty]
| +- [teksty] | +- Dokument1.txt
| +- Dokument1.txt | +- Dokument2.txt
| +- Dokument2.txt |
| +- [usr]
| +- [var]
+- [Programy]
Format podanej ścieżki zależy od systemu operacyjnego. W większości systemów (Unix, Linux, Mac OS) katalog jest reprezentowany przez ukośnik (ang. slash "/"), pełna ścieżka do pliku twierdza.avi (przykład powyżej) wygląda następująco:
/home/ciapek/filmy/twierdza.avi
W przypadku systemów Windows oraz DOS katalog jest reprezentowany przez lewy ukośnik (ang. backslash "\"), a pełna ścieżka do pliku twierdza.avi w tym systemie wygląda następująco:
C:\Documents and Settings\ciapek\moje dokumenty\filmy\twierdza.avi
Patrz też: ścieżka dostępu, katalog główny.
Dla systemu GNU/Linux powstały dwa formalne standardy określające układ katalogów w głównym systemie plików: FSSTND i FHS.
Rodzaje systemów plików
- Dyskowy system plików - "normalny" system plików pozwalający na zarządzanie danymi na stacjonarnych nośnikach danych, takich jak twarde dyski. Każdy system posiada swój własny system plików (np. Linux - ext2, Windows NT - NTFS itd.).
- Sieciowy system plików - w zasadzie jest to protokół umożliwiający przesyłanie poleceń do serwera przez sieć oraz wykonywanie operacji na odległość. Informacje są z powrotem przekazywane z serwera do klienta. Dzięki takiemu rozwiązaniu użytkownik nie widzi żadnej różnicy między pracą na sieciowym systemie plików a pracą na lokalnym systemie plików. Najbardziej znane to NFS, Coda, AFS (System plików Andrew'sa), SMB oraz NCP (Novell'a).
- Specjalne systemy plików (Witrualne systemy plików) - nie umożliwiają zarządzania danymi, np. system /proc (w Linuksie) dostarcza interfejsu, który umożliwia dostęp do niektórych struktur jądra.
- Systemy oparte na bazie danych - systemy plików, w których pliki są identyfikowane na podstawie swojej charakterystyki (np. autora, typu czy tematu, którego dotyczą) - jak w bazach danych.
- Systemy dziennikujące (lub księgujące, ang. journaling) - systemy z mechanizmem księgującym, zwiększającym bezpieczeństwo danych i umożliwiającym szybkie przywrócenie sprawności systemu po awarii. Mechanizm taki posiadają nowsze systemy plików (np. NTFS lub ext3).
Popularne systemy plików
Unix/Linux
- minix (system prof. Andrew S. Tanenbauma)
- ext (pochodna miniksa)
- ext2 (second extended file system, ulepszony ext)
- ext3 (bazujący na ext2, z księgowaniem)
- FFS Poprzednik UFS
- ReiserFS (Linuksowy system plików z księgowaniem autorstwa Hansa Reisera)
- Reiser4
- JFS (system plików IBM'a)
- UFS (uniksowy system plików pod Solarisa i BSD)
- XFS
- xFS (sieciowy system plików)
- NFS (sieciowy system plików firmy Sun)
- SYSV (system plików z Unix-V, firmy AT&T)
- ADFS (Acorn StrongARM)
- GNOME Storage (linuksowy system oparty na bazie danych)
- Xia (pochodna miniksa)
- AndrewFS (AFS) (sieciowy system plików pod Uniksa)
- smbfs (LAN Manager)
- ncpfs (sieciowy system plików Novella)
- cramfs
- filecore FS (pod BSD)
DOS
- FAT (FAT12) (Tablica alokacji plików, dyskietkowy)
- FAT16
- FAT32
Windows
- VFAT (Virtual FAT)
- NTFS (system plików z księgowaniem pod Windows NT i nowsze)
- WinFS (system plików oparty na bazie danych)
Amiga
- OFS (Amiga Old File System)
- Amiga Fast File System (FFS)
Apple/Macintosh
- Apple DOS
- Apple SOS
- Apple ProDOS
- MFS (Macintosh File System)
- HFS (Hierarchical File System)
- HFS+
- HFSX
OS/2
- HPFS (High Performance File System)
- JFS (Journaled File System)
BeOS
- BeFS (Be file system)
- OpenBFS
CD-ROM/DVD
- ISO9660
- Joliet (system firmy Microsoft)
- Rockridge (odpowiednik ISO9660 dla Unix)
- UDF (Universal Disk Format)
Inne
- AtheOS FS (AFS) (system plików systemu operacyjnego AtheOS, pochodna BeFS)
Zobacz też
- sieciowy system plików
- VFS
- księgowanie
- proc
W sieci
- [http://rainbow.mimuw.edu.pl/SO/Projekt03-04/temat5-g2/ Porównanie unixowych systemów plików] – praca w ramach Systemów Operacyjnych na Uniwersytecie Warszawskim
- [http://www.tldp.org/HOWTO/Filesystems-HOWTO.html Filesystems HOWTO] – dokument z roku 2000 w jęz. angielskim opisujący różne systemy plików (raczej z uniksowego punktu widzenia)
Kategoria:Systemy plików
ja:ファイルシステム
Nośnik danychNośnik danych jest to przyrząd umożliwiający fizyczne zapisanie danego
rodzaju informacji, a także późniejsze odczytanie (odtworzenie) tej informacji.
| Nazwa nośnika | Nazwa urządzenia |
| taśma dziurkowana | czytnik taśmy dziurkowanej i dziurkarka taśmy dziurkowanej |
| karta dziurkowana | czytnik kart dziurkowanych i dziurkarka kart dziurkowanychj |
| taśma magnetyczna | magnetofon szpulowy, magnetofon kasetowy, streamer, pamięć taśmowa |
| dyskietka magnetyczna 3,5" - DD,HD,2HD | stacja dysków FDD 1,44 MB, 2,88 MB, 720 kB do 2,88 MB |
| dyskietka magnetyczna 5,25" - 360 kB do 1,2 MB | stacja dysków FDD 1,2 MB |
| dyskietka magnetyczna typu ZIP | napęd ZIP 100, 250 lub 750 MB |
| dysk magnetyczny 10 MB do kilkuset GB | dysk twardy HDD |
| dyski CD Audio | czytnik CD-ROM, urządzenia audio, urządzenia do zapisu CDW |
| dyski optyczne-CD do 700 MB | czytnik CD-ROM, urządzenia do zapisu CDW |
| dyski optyczne-DVD - 18 GB | czytnik DVD |
Zobacz też: pamięć zewnętrzna.
Kategoria:Sprzęt komputerowy
Kategoria:Nośniki danych
ja:記憶装置
AmigaAmiga (hiszp. la amiga - przyjaciółka) - popularna marka komputerów produkowanych przez firmę Commodore. Po bankructwie tego ostatniego, marka ta została przejęta przez firmę Escom, następnie przez Gateway. W końcu wyłoniła się samodzielna firma Amiga INC, która po bankructwie sprzedała wszelkie prawa firmie KMOS. W międzyczasie KMOS zmieniło nazwę Amiga Inc.
System operacyjny
Podstawowym systemem operacyjnym Amigi jest AmigaOS z interfejsem Workbench. Istnieje również klon o nazwie Amiga Research Operating System (AROS).
Istnieje także wiele dystrybucji systemu Linux działających na komputerach Amiga. Działa na nich również OpenBSD i NetBSD.
NetBSD
Modele
Pierwszym modelem Amigi, wprowadzonym do sprzedaży w lipcu 1985 była Amiga 1000 z procesorem MC68000 7,14MHz firmy Motorola i chipsetem OCS.
Dwa lata później pojawiły się dwa modele - Amiga 500 i Amiga 2000, bardzo podobne do A1000.
Amiga 500 była komputerem domowym, z jednostką centralną zintegrowaną w jednym płaskim pudełku z klawiaturą i napędem dyskietek. Brak było kontrolera dysku twardego, choć istniały zewnętrzne urządzenia tego typu. Możliwości rozbudowy z przyczyn czysto objętościowych były mniejsze niż w poprzednich modelach (choć i tak duże). Pierwsze serie obu tych komputerów były wyposażone w chipset OCS (tzw Original chipset). Wersja 500+ charakteryzowała się nowszym oprogramowaniem ROM i większą ilością pamięci RAM oraz chipsetem ECS (Enhanced chipset).
A2000 była komputerem profesjonalnym, z dużymi możliwościami późniejszej rozbudowy. Oferowana była w kilku wariantach: A1500 (z dwoma napędami dyskietek), A2000HD (z dyskiem SCSI), A2000UX (działająca pod kontrolą systemu Unix, dokładniej SVR4).
Rozwinięciem modelu A2000 była Amiga 3000 (1990) - pierwszy 32-bitowy model Amigi. Wyposażona była w procesor MC68030 (14 lub 25 MHz) i chipset ECS. Istniała wersja UX pracująca pod kontrolą SVR4 (patrz: Unix). Chipset ECS oraz firmowo zamontowany flicker-fixer oraz firmowo zamontowany kontroler SCSI, możliwość dokupienia kontrolera DMA. Kickstart 2.04, elegancka obudowa desktop.
W (1991) roku rozpoczęto sprzedaż modelu z wbudowanym napędem CD - o nazwie Amiga CDTV. Z różnych powodów, model ten nie został dobrze przyjęty przez klientów - zawierał Kickstart 1.3 i brak mu było wbudowanej stacji dyskietek. Niemniej jednak jest jednym z niewielu takich rozwiązań w dziedzinie komputerów osobistych. Amiga CDTV z wyglądu bardzo przypominała magnetowid lub odtwarzacz CD.
Następnym krokiem (1992) był komputer A600 - najmniejszy model Amigi, pozbawiony nawet bloku numerycznego klawiatury. Chociaż minęło 7 lat od premiery modelu A1000, nadal posiadała procesor 68000 (7.14 MHz), ale już chipset ECS. Posiadała jednak kontroler dysku twardego, miejsce na dysk 2,5", stację dyskietek, nowy kickstart (w pierwszych seriach zawierający błędy), wbudowany modulator TV a nawet złącze PCMCIA.
Kolejnym modelem była Amiga 1200 z roku 1993 - następczyni modelu A500. Posiadała w pełni 32-bitowy procesor MC68EC020 (wersja procesora MC68020 z 24-bitową szyną adresową), taktowany zegarem 14.28 MHz, nowoczesne kości grafiki AGA, rozszerzono pamięć. Tak jak A600 posiada kontroler dysku twardego IDE, modulator TV oraz złącze PCMCIA. Do tej pory model 1200 jest najpopularniejszy ze względu na ogromne możliwości rozbudowy (choć pomyślany był jako model przejściowy, właściwie nie do rozbudowy). Powstało bardzo wiele urządzeń, a wśród najważniejszych znajdują się sloty PCI2.1 i karty z dwoma procesorami (MC68040/MC68060 + PowerPC 603e od 160 do 240 MHz), karty graficzne.
Warto także wspomnieć o modelu Amigi zwanym Amiga CD-32. Była to pierwsza 32 bitowa konsola do gier posiadająca wbudowany czytnik CD. Jeżeli chodzi o możliwości i charakterystykę sprzętową, to praktycznie nie różniła się ona pod tymi względami od A1200. Można było do niej zresztą podłączyć klawiaturę, stację dyskietek, czy inne akcesoria, przez co stawała się pełnowartościowym komputerem. Mówiło się nawet, że gdyby Commodore nadążyło z produkcją CD-32, to firma uniknęłaby bankructwa.
A4000 była rozszerzeniem A3000 z kośćmi AGA, posiadała procesor MC68030 lub MC68040. Kontroler SCSI zamieniono na IDE. Nadal nie użyto 16-bitowych układów dźwiekowych a flicker-fixera wymontowano. Kolejnym modelem była A4000T (tower) o podobnej konfiguracji. Posiadała zarówno kontroler IDE, jak i SCSI.
Amiga One-XE jeden z nowszych modeli komputerów Amiga produkowany przez brytyjską firmę Eyetech. Działa z procesorami PowerPC G3 i G4. Płyta nie jest już produkowana.
micro A1 - najnowszy model komputera Amiga produkowany przez brytyjską firmę Eyetech. Płyta główna w formacie miniATX ze zintegrowanym układem graficznym (Radeon firmy ATI) i dźwiękowym. Płyta była sprzedawana z procesorem 750FX/800 MHz lub 750GX/800 MHz i systemem operacyjnym AmigaOS 4.0 (na razie w wersji pre-release). Płyta nie jest już produkowana.
Obecna sytuacja
Obecnie rozwojem komputerów Amiga zajmują się firmy Hyperion i Eyetech. Hyperion na mocy porozumienia z firmą Amiga Inc. rozwija system operacyjny AmigaOS. Najnowsza wersja AmigaOS 4.0 korzysta z procesorów PowerPC i jest kontynuacją poprzednich wersji systemu AmigaOS (od 1.x do 3.x) - opierając się na jego oryginalnych kodach źródłowych. Z kolei firma Eyetech oferuje nowe modele komputerów Amiga: Amiga One XE i micro Amiga One. Amigi z Eyetechu wykorzystują procesory z rodziny PowerPC (7445, 7447 i 750FX/GX).
Równolegle do "oficjalnej" linii rozwoju, od wielu lat rozwijany jest też MorphOS kompatybilny z AmigaOS i działający na kartach BlizzardPPC, CyberStormPPC oraz komputerach Pegasos.
Emulatory Amigi
Istnieje emulator Amigi UAE dla systemów Unix, Linux, PalmOS, MacOs, Windows oraz dla samego AmigaOS.
UAE uruchomiony pod AmigaOS umożliwia uruchamiania starszego oprogramowanie odwołującego się bezpośrednio do układów specjalizowanych montowanych w Amiga z czasów firmy Commodore. Programy takie nie działają na najnowszych Amigach z systemem AmigaOS 4.0, ale dzięki UAE została zapewniona kompatybilność.
Do pobrania [http://www.freiburg.linux.de/~uae/ z tej strony]. Wersja dla systemów Windows nazywa się [http://www.winuae.net WinUAE].
Warto również wspomnieć o innym popularnym emulatorze Amigi - Fellow. Wersja dla Windows nazywa się WinFellow i dostępna jest [http://fellow.sourceforge.net/ tutaj].
Linki zewnętrzne
- [http://www.amiga.com Oficjalna strona Amigi]
- [http://www.amp.dascene.net Amiga Music Preservation]
- [http://www.hyperion-entertainment.biz Firma rozwijająca system operacyjny AmigaOS]
- [http://www.eyetech.co.uk Producent komputerów AmigaOne]
- [http://www.exec.pl eXec - polski serwis informacyjny o komputerach Amiga]
- [http://os4.exec.pl Polska strona opisująca system AmigaOS 4.0]
- [http://www.amiga.elbi.pl Strefa Emulacji Gier Amigowych]
- [http://www.ppa.pl Polski Portal Amigowy]
- [http://ato.exec.pl Polska sekcja ATO]
- [http://www.amiga-hardware.com BBoAH The Big Book of Amiga Hardware]
- [http://www.amigaworld.net Amigaworld.net Portal społeczności użytkowników Amigi]
- [http://www.amiga-news.de Największa strona z informacjami z amigowego świata, w wielu językach]
Kategoria:Amiga
ja:Amiga
Amiga Research Operating SystemAmiga Research Operating System w skrócie AROS to darmowy klon systemu operacyjnego komputerów Amiga - Amiga Workbench 3.1 - uruchamiany na komputerach osobistych klasy PC.
Historia
- 1997 - rozpoczęcie projektu.
Zobacz w sieci
[http://aros.sourceforge.net/ AROS: Amiga® Research Operating System]
[http://aros-exec.org/ Portal użytkowników AROSa]
[http://www.aros-max.co.uk/ Dystrybucja AROSa]
[http://www.aros.bbs.pl/ AROS-Polska]
[http://www.frappr.com/arosusers/ Mapa użytkowników AROSa]
[http://www.aros.ppa.pl/ AROS-PL]
[http://ppa.pl/publicystyka/aros.html Artykuł na stronie Polskiego Portalu Amigowego]
Kategoria:Amiga
Kategoria:systemy operacyjne
MorphOSMorphOS - 32-bitowy system operacyjny dla komputerów Pegasos oraz Amiga wyposażonych w procesory z rodziny PowerPC. Zaimplementowany w systemie mechanizm emulacji umożliwia uruchamianie aplikacji stworzonych dla systemu AmigaOS 3.x i skompilowanych pod procesory Motoroli z rodziny M68000, o ile nie odwołują się one bezpośrednio do układów specjalizowanych użytych w "klasycznych" modelach Amig (jak np. układy graficzne AGA). "Wsteczna kompatybilność" API MorphOSa z systemem AmigaOS 3.x umożliwia relatywnie proste przeportowanie aplikacji z Amigi na ten system. Część programów oryginalnie napisanych pod AmigaOS jest obecnie rozwijana dla systemu MorphOS.
Rozwój systemu MorphOS był początkowo finansowany przez firmę Genesi, producenta płyt głównych Pegasos. Pod koniec 2003 roku firma wycofała się ze wsparcia finansowego projektu. Obecnie system rozwijany jest hobbystycznie przez dotychczasowy zespół programistów, najnowsza aktualizacja do wersji 1.4.5 ukazała się 30 kwietnia 2005 roku, 25 sierpnia 2005 wydano MorphOS-a dla komputerów Amiga wyposażonych w akceleratory z procesorami PowerPC 603e i 604. 27 sierpnia 2005 ukazała się z kolei aktualizacja pakietu sterowników 3D.
Linki zewnętrzne
- http://www.morphosppc.com
- http://powerup.morphos-team.net
- http://www.morphzone.org
kategoria:systemy operacyjne
Mac OSMac OS to system operacyjny dla komputerów Macintosh firmy Apple. Był to pierwszy ogólnodostępny system operacyjny wyposażony w graficzny interfejs użytkownika (GUI). Wcześniejsze komputery Apple pracowały w oparciu o interfejs znakowy. Idea graficznego interfejsu została zaczerpnięta przez inżynierów Apple z laboratoriów firmy Xerox w Palo Alto, gdzie w 1973 roku stworzono Alto pierwszy komputer z graficznym interfejsem.
Pierwsza wersja systemu weszła do użytku publicznego w 1984 wraz z modelem Macintosh - reklamowana przy pomocy klipu nawiązującego do literatury Georga Orwella. Upowszechnione przez nią takie standardy graficznego interfejsu jak okna, rozwijalne menu, kursor myszy, kosz na niepotrzebne pliki stały się od tej pory podstawą współczesnych systemów operacyjnych.
Zachęcona sukcesem Apple, w tym samym kierunku zaczęła podążać firma Microsoft, jednocześnie Apple starał się opatentować wygląd i wrażenia swojego systemu. Doprowadziło to do długotrwałego procesu o własność intelektualną.
Mac OS działał w systemach opartych początkowo na procesorach Motoroli z linii 680x0 a następnie linii PowerPC opracowanej wspólnie przez Apple, Motorolę i IBM. W 1983 roku próbnie przeniesiono go także na platformę IA32. Próbne testy wykazały, że działał on szybciej niż na ówczesnych układach wykorzystywanych w komputerach Apple. Kierownictwo firmy nigdy nie zdecydowało się jednak na kontynuowanie tych doświadczeń w obawie o utratę zapotrzebowania na własną platformę sprzętową.
Mimo że interfejs Mac OS był bardzo intuicyjny i wygodny, sam system cierpiał na wiele poważnych bolączek, jak np. brak wielozadaniowości z wywłaszczeniem czy w pełni bezpiecznej pamięci. Apple przez wiele lat starało się rozwiązać te kłopoty na bazie kodu Mac OS. Starania te nie przyniosły zadowalającego rezultatu. Nigdy nie zostały ukończone projekty Copland oraz Rhapsody, która była próbą połączenia uniksowego jądra z macintoshowym interfejsem użytkownika.
Po powrocie do Apple jednego z założycieli firmy Steva Jobsa i wchłonięciu jego firmy NeXT rozpoczęto prace nad nowym systemem. Prowadzono je w oparciu o doświadczenia z Rhapsody oraz NextStep, rewolucyjnego systemu operacyjnego stworzonego w ramach NeXT. W międzyczasie doskonalono Mac OS, aby nie utracić pozycji rynkowej. Jego ostatnia wersja była oznaczona numerem 9.
W 2000 roku wprowadzono Mac OS X - tj. Mac OS numer 10 stworzony w oparciu o całkiem nowe rozwiązania systemowe. Zasadniczym zmianom uległ także interfejs użytkownika. Kolejne pełne wersje systemu są od tej pory numerowane cyframi podrzędnymi:
- Mac OS X 10.0
- Mac OS X 10.2, nazwa kodowa: Jaguar
- Mac OS X 10.3, nazwa kodowa: Panther
- Mac OS X 10.4, nazwa kodowa: Tiger (połowa 2005)
Historia wydań
- System 6 – wydany 1988 r.
- System 7 – wydany 13 maja 1991 r.; najdłużej rozwijana wersja
- Mac OS 8 – wydany 26 lipca 1997 r.; wersja systemu wspierająca zarówno procesory z rodziny Motorola 680x0 jak i PowerPC
- Mac OS 9 – wydany 23 października 1999 r.; wersja systemu wspierająca wyłącznie procesory PowerPC
- Mac OS X – wydany 24 marca 2001 r.
Zobacz też
- Apple Computer, Macintosh, Mac OS X, Steve Jobs, Rhapsody, Copland, NeXTStep
Zobacz w sieci
- [http://wilk13.net Macintosh: darmowe programy]
- [http://www.download.com/2001-2003_4-0.html?tag=dir Aplikacje dla Macinstosha (darmowe i płatne)]
- [http://mcosre.sourceforge.net/ McOS Re - klon Mac OS na licencji GNU GPL]
Kategoria:Mac OS
Kategoria:Apple
ko:맥 오에스
ms:Mac OS
ja:Mac OS
simple:Mac OS
th:แมคโอเอส
Mac OS XMac OS X - jest to złożony system operacyjny dla komputerów Macintosh opracowany w roku 2000 w amerykańskiej firmie Apple Computer. X w nazwie oznacza 10 wersję systemu Mac OS, jednak Mac OS X jest systemem o całkowicie odmiennej budowie niż poprzednie wersje Mac OS.
Mac OS X powstał w oparciu o mikrojądro Mach oraz usługi i narzędzia zaczerpnięte z projektów NetBSD oraz FreeBSD. Jego podstawą jest opracowany w Apple Computer system operacyjny Darwin. Graficzny interfejs użytkownika nosi nazwę Aqua i jest własnym rozwiązaniem opracowanym przez Apple z wykorzystaniem doświadczeń i wzorów z poprzednich systemów tej firmy. Apple udostępnia także własną wersję X Window System.
Tworząc Mac OS X wykorzystano doświadczenia z nieukończonego systemu Rhapsody oraz rewolucyjnego NeXTStep firmy NeXT założonej przez Steva Jobsa a przejętej przez Apple Computer, gdy ten powrócił do jego zarządu.
Steva Jobsa
Jego silne strony to między innymi:
- możliwość uruchamiania programów napisanych dla wcześniejszych wersji systemu Mac OS
- łatwość adaptacji, kompilacji i wykorzystania oprogramowania stworzonego dla systemów uniksowych, zwłaszcza typu BSD
- Quartz Extreme, format PDF jako podstawa interfejsu graficznego
- ColorSync, przemysłowej jakości system zarządzania kolorem
- wydajny silnik OpenGL
- ma wbudowane zaawansowane narzędzia sieciowe
Podobnie jak poprzednie systemy Apple, Mac OS X niesie wiele innowacji i w wielu dziedzinach kształtuje współczesną ewolucję oraz modę graficznych systemów operacyjnych.
Na konferencji WWDC (WorldWide Developer Conference) 6 czerwca 2005 prezes Apple, Steve Jobs potwierdził pojawiające się raz na jakiś czas wiadomości, jakoby Mac OS X był potajemnie tworzony z myślą o procesorach firmy Intel i kompatybilnych. Zaprezentował działanie najnowszej wersji (10.4) systemu na procesorze Pentium i zapowiedział przejście w ciągu dwóch lat całej linii komputerów Macintosh (a co za tym idzie - systemu operacyjnego i oprogramowania) na procesory Intela. Ma w tym pomóc innowacyjne oprogramowanie umożliwiające uruchamianie oprogramowania przewidzianego na procesory PowerPC na procesorach klasy x86. Jako przyczyny przejścia wymieniane były problemy firmy IBM z wyprodukowaniem energooszczędnych, szybkich procesorów do komputerów przenośnych.
Firma Dell wyraziła już chęć instalowania Mac OS X na produkowanych przez siebie komputerach, ale Apple nie przewiduje licencjonowania systemu na inny niż produkowany przez siebie sprzęt. Apple nie będzie powstrzymywało użytkowników przed instalacją systemu Windows na Macintoshach opartych na nowych procesorach (podobnie jak obecnie nie powstrzymuje przed instalacją Linuksa), ale odmawia udzielania wsparcia technicznego w takiej systuacji.
Wersje systemu
- Mac OS X Public Beta (13 września 2000)
- Mac OS X 10.0 ("Cheetah"; 24 marca 2001)
- Mac OS X 10.1 ("Puma"; 25 września 2001)
- Mac OS X 10.2 ("Jaguar"; 24 sierpnia 2002)
- Mac OS X 10.3 ("Panther"; 24 października 2003)
- Mac OS X 10.4 ("Tiger"; 29 kwietnia 2005)
- Mac OS X 10.5 ("Leopard"; zapowiedziany na przełom 2006/2007)
Zobacz także
- Apple, Mac OS, Darwin, Mach, BSD, Rhapsody, FreeBSD, NetBSD, Unix
Mac OS X na platformie x86
- http://www.osx86project.org/
- http://www.xplodenet.com/
- http://www.uneasysilence.com/os-x-proven-hacked-and-running-on-an-ordinary-pc/
- [http://www.twojmac.pl/story.php?id=94 Instrukcja instalacji MacOS X na platformie x86 (po polsku)]
Linki zewnętrzne
- [http://www.apple.com.pl/macosx/ Mac OS X na stronach polskiego dystrybutora Apple]
- [http://www.apple.com/macosx/ Apple Mac OS X (po angielsku)]
- [http://www.myapple.pl/ MyApple.pl - Portal i Forum polskich użytkowników Macintosha]
- [http://www.macnews.pl/ MacNews.pl - Świeże wiadomości ze świata Maka]
- [http://www.twojmac.pl/ TwójMAC.pl - Wortal miłośników komput |