Istnieje pięć głównych czynności, które system operacyjny musi wykonywać, aby zarządzać uruchomionymi procesami. Bez tych pięciu czynności system operacyjny nie byłby w stanie pozostać stabilny przez dłuższy czas.
Tworzenie procesu
Po pierwszym włączeniu komputera system operacyjny otwiera procesy, aby uruchamiać usługi dla wszystkiego, od bufora wydruku po zabezpieczenia komputera. Kiedy logujesz się do komputera i uruchamiasz programy, programy tworzą procesy zależne. Procesem nie jest sam program, ale raczej instrukcje, których CPU używa do wykonania programu. Proces należy do systemu Windows lub innego zainstalowanego programu.
Wideo dnia
Stan przetwarzania
Stan procesu może być „utworzony”, „uruchomiony”, „oczekujący” lub „zablokowany”. Można powiedzieć, że proces "czeka" chwilę po uruchomieniu programu nadrzędnego, a przed jego przetworzeniem przez procesor. Proces „działa”, gdy procesor go przetwarza. Proces można uznać za „zablokowany”, jeśli komputer nie ma wystarczającej ilości pamięci, aby go przetworzyć lub jeśli nie można zlokalizować plików skojarzonych z procesem. Wszystkie systemy operacyjne mają jakiś system obsługi procesów, chociaż mają różne nazwy dla każdego stanu.
Synchronizacja procesów
Po uruchomieniu procesów system operacyjny potrzebuje sposobu, aby żadne dwa procesy nie miały dostępu do tych samych zasobów w tym samym czasie. W szczególności żadne dwa procesy nie mogą jednocześnie próbować wykonać tego samego obszaru kodu. Jeśli dwa procesy próbowałyby wykonać ten kod w tym samym czasie, może nastąpić awaria, ponieważ próbują wywołać te same pliki i wysłać te same instrukcje do procesora w tym samym czasie. Jeśli dwa procesy muszą uruchomić ten sam kod, jeden musi poczekać na zakończenie drugiego przed kontynuowaniem.
Komunikacja procesowa
Komputer musi zapewnić, że procesy mogą komunikować się z procesorem i między sobą. Na przykład program może mieć wiele procesów, a każdy proces może mieć inny poziom uprawnień. Poziom uprawnień to po prostu wskazanie poziomu dostępu, jaki proces powinien mieć do systemu. Komunikacja procesów zapewnia, że komputer może określić uprawnienia każdego procesu. Jest to bardzo ważne w zapobieganiu przez złośliwe oprogramowanie usuwania plików systemowych lub dodawania instrukcji do samego systemu operacyjnego.
Zapobieganie impasom
Wreszcie komputer musi mieć sposób, aby zapewnić, że procesy nie zostaną zablokowane. Zakleszczenie występuje, gdy każdy z dwóch procesów wymaga zasobu, którego aktualnie używa drugi, a więc żaden z procesów nie może zakończyć tego, co robi. Zasoby nie mogą zostać zwolnione, a programy zawieszają się. Możesz również nazwać tę sytuację „okrężnym oczekiwaniem”. Systemy operacyjne zapobiegają zakleszczeniu w różnych sposobów, ale najczęstszą metodą jest zmuszenie procesu do zadeklarowania potrzebnych zasobów, zanim będzie to możliwe rozpocząć. Alternatywnie, proces może być zmuszony do żądania zasobów w blokach, a następnie zwalniania zasobów po ich zakończeniu.