• Artykuły
  • Forum
  • Ciekawostki
  • Encyklopedia
  • System operacyjny



    Podstrony: [1] [2] 3 [4] [5] [6]
    Przeczytaj także...
    Inferno to rozproszony system operacyjny zaprojektowany do pracy na wielu komputerach połączonych siecią komputerową. Może być uruchomiony jako autonomiczny system operacyjny, jako aplikacja w istniejącym już systemie, lub jako wtyczka do Internet Explorera. Aplikacje dla tego systemu pisane są w języku Limbo.Komputer osobisty (ang. personal computer) – mikrokomputer przeznaczony przede wszystkim do użytku osobistego w domu i biurze. Służy głównie do uruchamiania oprogramowania biurowego, dostępu do zasobów Internetu, prezentacji treści multimedialnych (tekst, obrazy, dźwięki, filmy i inne), jak i gier.
    Zasoby sprzętowe[edytuj kod]

    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 np. dysk twardy,
  • 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[edytuj kod]

    W przypadku środowiska wielozadaniowego, w którym wiele zadań wykonywanych jest w tym samym czasie, może dość do interferencji procesów. Aby zapobiec temu niekorzystnemu zjawisku organizuje się dostęp do sprzętu, plików, pamięci itp. poprzez ustanowienie zasobów systemowych. W takim przypadku zadania (procesy) użytkownika nie sięgają samodzielnie do sprzętu lub pliku, ale używają systemu operacyjnego jako strażnika zarządcy zasobów. Dzięki takiej organizacji dostępu do zasobów, zadania „mają wrażenie”, że każde z nich pracuje na własnym komputerze. O realny porządek dostępu do rzeczywistego urządzenia, pamięci lub pliku dba system operacyjny.

    Plik (ang. file) – uporządkowany zbiór danych o skończonej długości, posiadający szereg atrybutów i stanowiący dla użytkownika systemu operacyjnego całość. Nazwa pliku nie jest częścią tego pliku, lecz jest przechowywana w systemie plików.Środowisko – ogół elementów nieożywionych i ożywionych, zarówno naturalnych, jak i powstałych w wyniku działalności człowieka, występujących na określonym obszarze oraz ich wzajemne powiązania, oddziaływania i zależności. Jest to pojęcie podrzędne w stosunku do przyrody, obejmującej również elementy ożywione.

    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 (zapobieganie interferencji),
  • 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 uruchomionym, 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:

    Programowanie komputerów to proces projektowania, tworzenia, testowania i utrzymywania kodu źródłowego programów komputerowych lub urządzeń mikroprocesorowych (mikrokontrolery). Kod źródłowy jest napisany w języku programowania, z użyciem określonych reguł, może on być modyfikacją istniejącego programu lub czymś zupełnie nowym. Programowanie wymaga dużej wiedzy i doświadczenia w wielu różnych dziedzinach, jak projektowanie aplikacji, algorytmika, struktury danych, znajomość języków programowania i narzędzi programistycznych, wiedza nt. kompilatorów, czy sposób działania podzespołów komputera. W inżynierii oprogramowania, programowanie (implementacja) jest tylko jednym z etapów powstawania programu.Jednostka zarządzania pamięcią (skr. MMU od ang. Memory Management Unit) – zestaw układów realizujących dostęp do pamięci fizycznej żądanej przez CPU. Wśród zadań tych układów znajdują się funkcje translacji pamięci wirtualnej do pamięci fizycznej, ochronę pamięci, obsługę pamięci podręcznej, zarządzanie szynami danych oraz, w prostszych (szczególnie 8-bitowych) systemach, przełączanie banków pamięci.
  • 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, z których każdy ma własny adres. 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:

    Komputer (z ang. computer od łac. computare – liczyć, sumować; dawne nazwy używane w Polsce: mózg elektronowy, elektroniczna maszyna cyfrowa, maszyna matematyczna) – maszyna elektroniczna przeznaczona do przetwarzania informacji, które da się zapisać w formie ciągu cyfr albo sygnału ciągłego.Stronicowanie jest jednym ze sposobów rozwiązania problemu zewnętrznej fragmentacji polegającym na dopuszczeniu nieciągłości rozmieszczenia logicznej przestrzeni adresowej procesu w pamięci fizycznej. Zostało użyte przez polskiego inżyniera Jacka Karpińskiego w architekturze komputera K-202.
  • 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:

    Algorytm szeregowania (ang. scheduler - planista) to algorytm rozwiązujący jedno z najważniejszych zagadnień informatyki - jak rozdzielić czas procesora i dostęp do innych zasobów pomiędzy zadania, które w praktyce zwykle o te zasoby konkurują.Komputerowe systemy operacyjne (ang. operating systems, skrót OSes) dostarczają zestawu funkcji wymaganych i używanych przez większość aplikacji uruchamianych na komputerze, a także tych pozwalających kontrolować i synchronizować pracę sprzętu komputerowego. Pierwsze komputery nie były wyposażone w systemy operacyjne, przez co każdy program uruchamiany na nich potrzebował pełnej specyfikacji sprzętu, żeby poprawnie pracować i wykonywać podstawowe zadania. Dodatkowo każdy taki program musiał być wyposażony we własne sterowniki do urządzeń peryferyjnych, takich jak drukarki, czy czytniki kart perforowanych. Wzrost złożoności komputerów oraz programów pracujących na nich sprawił, że systemy operacyjne stały się niezbędne do codziennego użytku.
  • 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ń.

    Asembler (z ang. assembler) – termin informatyczny związany z programowaniem i tworzeniem kodu maszynowego dla procesorów. W języku polskim oznacza on program tworzący kod maszynowy na podstawie kodu źródłowego (tzw. asemblacja) wykonanego w niskopoziomowym języku programowania bazującym na podstawowych operacjach procesora zwanym językiem asemblera, popularnie nazywanym również asemblerem. W tym artykule język programowania nazywany będzie językiem asemblera, a program tłumaczący – asemblerem.Pamięć operacyjna (ang. internal memory, primary storage) – pamięć adresowana i dostępna bezpośrednio przez procesor, a nie przez urządzenia wejścia-wyjścia procesora. W pamięci tej mogą być umieszczane rozkazy (kody operacji) procesora (program) dostępne bezpośrednio przez procesor i stąd nazwa pamięć operacyjna. W Polsce często pamięć ta jest utożsamiana z pamięcią RAM, choć jest to zawężenie pojęcia, pamięcią operacyjną jest też pamięć nieulotna (ROM, EPROM i inne jej odmiany) dostępna bezpośrednio przez procesor, a dawniej używano pamięci o dostępie cyklicznym.

    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:

    Karta dziurkowana, karta perforowana - nośnik danych stosowany do zapisu informacji w maszynach z automatycznym przetwarzaniem danych. Używana do programowania komputera począwszy od ich konstrukcji aż do lat 80. XX wieku, stosowana współcześnie z papierową taśmą dziurkowaną.Podmiot gospodarczy – obecnie termin kolokwialny wywodzący się z przepisów prawa wynikających z ustawy o działalności gospodarczej z 1988 roku. Ma za zadanie określać każdego uczestnika działalności gospodarczej, jak m.in. osoby fizyczne wykonujące działalność gospodarczą, przedsiębiorstwa państwowe, spółdzielnie oraz spółki osobowe bądź kapitałowe.
  • zarządzanie wolną pamięcią,
  • alokacją zapisu,
  • planowaniem dysku.
  • Zaplecze sprzętowe systemów operacyjnych[edytuj kod]

    Jedynym dodatkowym urządzeniem koniecznym do uruchomienia wielozadaniowego systemu operacyjnego jest licznik zliczający interwały czasowe. Każdy nawet najprostszy system operacyjny musi być taktowany, aby mógł odliczać czas pozostały do zakończenia jednego a rozpoczęcia innego zadania.

    Interfejs programowania aplikacji (ang. Application Programming Interface, API) – sposób, rozumiany jako ściśle określony zestaw reguł i ich opisów, w jaki programy komunikują się między sobą. API definiuje się na poziomie kodu źródłowego dla takich składników oprogramowania jak np. aplikacje, biblioteki czy system operacyjny. Zadaniem API jest dostarczenie odpowiednich specyfikacji podprogramów, struktur danych, klas obiektów i wymaganych protokołów komunikacyjnych.Programowanie obiektowe (ang. object-oriented programming) — paradygmat programowania, w którym programy definiuje się za pomocą obiektów — elementów łączących stan (czyli dane, nazywane najczęściej polami) i zachowanie (czyli procedury, tu: metody). Obiektowy program komputerowy wyrażony jest jako zbiór takich obiektów, komunikujących się pomiędzy sobą w celu wykonywania zadań.

    Jednak w celu uzyskania systemu komputerowego o dużym stopniu niezawodności nowoczesne procesory posiadają cechy wspierające implementacje i działanie systemów operacyjnych. Cechy te to:

  • tryby pracy:
  • uprzywilejowany (kernel/supervisor mode),
  • chroniony (protected mode), w chronionym trybie pracy niektóre potencjalnie niebezpieczne instrukcje procesora są niedostępne, a próba wywołania ich spowoduje wystąpienie przerwania (obsługiwanego dalej przez system). Nawiązując do budowy systemu operacyjnego, wszelka aktywność zadań (aplikacji) użytkownika oraz powłoki odbywa się w chronionym trybie pracy (protected mode). Jądro systemu operacyjnego pracuje w trybie uprzywilejowanym (kernel mode).
  • jednostki zarządzania i ochrony pamięci, pozwalające definiować obszary pamięci np. tylko do odczytu lub tylko do zapisu przez wybrany proces.
  • kontrolery przerwań, gdy licznik taktujący system operacyjny wyliczy żądany interwał czasowy informacja o tym zdarzeniu przekazywana jest do procesora przy pomocy przerwania. Podobnie informacje na temat innych zdarzeń przekazywane są do procesora, a w ten sposób do systemu operacyjnego przy pomocy mechanizmu przerwań.
  • specjalistyczne akceleratory sprzętowe służące do przyśpieszania pewnych typowych czynności wykonywanych przez systemy operacyjne. Ta funkcjonalność jest rzadko spotykana i zazwyczaj spotyka się ją we wbudowanych systemach RTOS.
  • Jądro systemu operacyjnego (ang. kernel) – podstawowa część systemu operacyjnego, która jest odpowiedzialna za wszystkie jego zadania.Interferencja procesów - szkodliwe zjawisko spotykane w środowiskach wielozadaniowych systemów operacyjnych. Jest skutkiem przypadkowego dostępu poszczególnych procesów (zadań) do tych samych zasobów (plików, urządzeń IO) komputera.


    Podstrony: [1] [2] 3 [4] [5] [6]



    w oparciu o Wikipedię (licencja GFDL, CC-BY-SA 3.0, autorzy, historia, edycja)

    Warto wiedzieć że... beta

    Xen - monitor maszyn wirtualnych (ang. Hypervisor) wydany na licencji open source, opracowany na Uniwersytecie Cambridge, obecnie rozwijany przez firmę XenSource.
    Procesor (ang. processor), także CPU (ang. Central Processing Unit) – urządzenie cyfrowe sekwencyjne, które pobiera dane z pamięci, interpretuje je i wykonuje jako rozkazy. Wykonuje on ciąg prostych operacji (rozkazów) wybranych ze zbioru operacji podstawowych określonych zazwyczaj przez producenta procesora jako lista rozkazów procesora.
    Wywłaszczenie – technika używana w środowiskach wielozadaniowych, w której algorytm szeregujący (scheduler) może wstrzymać aktualnie wykonywane zadanie (np. proces lub wątek), aby umożliwić działanie innemu. Dzięki temu rozwiązaniu zawieszenie jednego procesu nie powoduje blokady całego systemu operacyjnego. W systemach bez wywłaszczenia zadania jawnie informują scheduler, w którym momencie chcą umożliwić przejście do innych zadań. Jeżeli nie zrobią tego w odpowiednim czasie, system zaczyna działać bardzo wolno. 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ć nie tylko programów, ale także samego jądra – przykładem takiego systemu jest Linux.
    Wielozadaniowość – cecha systemu operacyjnego umożliwiająca mu równoczesne wykonywanie więcej niż jednego procesu. Zwykle za poprawną realizację wielozadaniowości odpowiedzialne jest jądro systemu operacyjnego.
    MERA 300 – to polski minikomputer o 8-bitowej architekturze, a także nazwa serii komputerów stanowiących kolejne rozwinięcia komputera MERA 300.
    Translator to specjalny program komputerowy (lub urządzenie), dokonujący tłumaczenia (translacji) programu napisanego w języku programowania, z postaci źródłowej do postaci wynikowej, zrozumiałej dla maszyny. Czasami zamiast określenia kod wynikowy używa się równoważnego kod obiektowy.
    System 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; także: wolumin.

    Reklama

    Czas generowania strony: 0.229 sek.