Зачем вообще нужна операционная система — нельзя ли запускать программы напрямую?
Понимаю, что Windows/Linux — это операционная система. Но зачем она как прослойка? Почему программа не может просто работать на железе напрямую, без неё?
2 ответа
Технически программа могла бы работать на голом железе — так и делали на заре компьютеров. Но это был ад: каждая программа должна была сама уметь общаться с диском, памятью, экраном, принтером — и при этом не мешать другим программам. Операционная система (ОС) появилась, чтобы взять всю эту грязную работу на себя.
Что делает ОС:
- Управляет железом за всех. Программе не нужно знать модель твоего диска или видеокарты — она просто говорит ОС «сохрани файл», а ОС разбирается как (через драйверы).
- Делит ресурсы. Процессор и память — общие. ОС распределяет, кому когда работать, чтобы десятки программ уживались одновременно и не дрались за ресурсы.
- Защищает. Не даёт одной программе залезть в память другой или сломать систему.
- Даёт удобства. Файлы, папки, окна, рабочий стол — это всё ОС.
Без ОС каждая программа изобретала бы велосипед и конфликтовала с соседями. ОС — это менеджер-распорядитель между твоими программами и железом: благодаря ему программисту не нужно думать про конкретное железо, а ты можешь спокойно держать открытыми сразу браузер, музыку и игру.
Аналогия: ОС — это администратор в общежитии. Без него каждый жилец (программа) сам бы дрался за душ, кухню и розетки, и был бы хаос. Администратор распределяет ресурсы по очереди, следит, чтобы никто не лез в чужую комнату, и даёт всем общие удобства. Поэтому жильцам (программам) не надо договариваться напрямую с водопроводом (железом).