Има пет основни дейности, които една операционна система трябва да поддържа, за да управлява процесите, които изпълнява. Без тези пет дейности една операционна система не би могла да остане стабилна за определен период от време.
Създаване на процеси
Когато за първи път включите компютъра си, операционната система отваря процеси за изпълнение на услуги за всичко - от спулера за печат до компютърната защита. Когато влезете в компютъра и стартирате програми, програмите създават зависими процеси. Процесът не е самата програма, а по-скоро инструкциите, които процесорът използва за изпълнение на програмата. Процес или принадлежи на Windows, или на друга програма, която сте инсталирали.
Видео на деня
Състояние на обработка
Състоянието на даден процес може да бъде „създаден“, „изпълнен“, „изчакващ“ или „блокиран“. Може да се каже, че е процес „изчаква“ момента, след като стартирате неговата родителска програма и преди да бъде обработен от процесора. Процесът "работи", когато процесорът го обработва. Можете да считате процес за „блокиран“, ако компютърът няма достатъчно памет, за да го обработи, или ако файловете, свързани с процеса, не могат да бъдат намерени. Всички операционни системи имат някаква система за обработка на процеси, въпреки че имат различни имена за всяко състояние.
Синхронизация на процесите
След като процесите се изпълняват, операционната система се нуждае от начин да гарантира, че няма два процеса да имат достъп до едни и същи ресурси по едно и също време. По-конкретно, няма два процеса да се опитат да изпълнят една и съща област от код наведнъж. Ако два процеса се опитат да изпълнят този код по едно и също време, може да възникне срив, тъй като те се опитват да извикат едни и същи файлове и да изпратят същите инструкции на процесора по едно и също време. Ако два процеса трябва да изпълняват един и същ код, единият трябва да изчака, докато другият приключи, преди да продължи.
Процесна комуникация
Компютърът трябва да гарантира, че процесите могат да комуникират с процесора и един с друг. Например, една програма може да има много процеси и всеки процес може да има различно ниво на разрешение. Нивото на разрешение е просто индикация за нивото на достъп, който процесът трябва да има до системата. Комуникацията на процеса гарантира, че компютърът може да определи разрешенията на всеки процес. Това е много важно за предотвратяване на злонамерен софтуер да изтрие системни файлове или да добави инструкции към самата операционна система.
Предотвратяване на безизходица
И накрая, компютърът трябва да има начин да гарантира, че процесите няма да изпаднат в безизходица. Застой възниква, когато всеки от два процеса изисква ресурс, който другият използва в момента, и така нито един процес не може да завърши това, което прави. Ресурсите не могат да бъдат освободени и програмите се блокират. Можете също да наречете тази ситуация „циркулярно изчакване“. Операционните системи предотвратяват застой в различни начини, но най-често срещаният метод е да се принуди процес да декларира ресурсите, от които ще се нуждае, преди да може стартиране. Като алтернатива, процесът може да бъде принуден да поиска ресурси в блокове и след това да освободи ресурсите, когато приключи с тях.