ZX, бред к юбилею | страница 32
Для того и нужна система, служащая прокладкой между кремниевыми и белковыми мозгами — переводящая требования человека в строгий ряд машинных команд, и ответ в удобную для восприятия форму.
В древних компах это было реализовано совсем простейшим образом, точней почти никак. Загрузка-выгрузка кода программы, тип носителя не важен — от перфокарт/перфолент (бумажки с дырочками, несущими информацию) до первых винчестеров. Программа загружается в ОЗУ и работает. Но рано ли поздно, этот процесс решили упорядочить.
Самым ярким образцом стала система CP/M — расшифровывается как "Контрольная программа/монитор для микрокомпьютеров", живет аж с 1973-го года. И процветает, до сих пор — несмотря на то, что молодой и хитрый Билли Гейтс, обработав её напильником, выпустил в 1981 м году свой MS-DOS. На первых порах успех слабоват, используется только в машинках IBM.
Ну а в мировом зоопарке компов каждый производитель делает свой букет. С точки зрения процессора и пользователя например наш, прошитый в ПЗУ "Спектрум+" Бейсик тоже операционная система. Причем не самая худшая — поддерживает работу с кучей устройств хранения данных, запуск программ в машинном коде, интерактивный диалог с пользователем. Например команда SAVE m1 "Program" при отсутствии микродрайва — вежливо пошлет нафиг…
Ну а теперь, с появлением все более навороченных машин во весь рост встала проблема, ея величество Многозадачность. Задумчивое такое название, а к результатам её работы все давно привыкли — работаем на компе, слушаем музыку и одновременно качаем из инета фсякую фигню. Простейший пример, но задуматься над тем, как это возможно — голову поломать легко.
В старых машинках было все просто, как у нацистов — один процессор, одна память, одна программа, и ниипет. Если что — восемь бед, один ресет. Поздней, уже на Спектруме с расширением, или на "плюсе" была фактически введена простейшая пофигическая многозадачность. Т. е. какая-то программа радостно работает, до определенного события. Например если ей приспичило данные записать на микродрайв. Тут она резко стопорится, из теневого ПЗУ радостно выползает программа-контроллер, кушает данные, делает работу. И снова тихо уползает, передав назад управление программе в основной памяти.
Но сейчас задачка стоит посерьезней — тут уже нужно думать. И нам, и процессору, и программам. Будем использовать приоритетную многозадачность.
То есть куча программ бодается за процессорное время и доступ к памяти, внешним устройствам. Естественно это надо контролировать, и висит постоянно в памяти ядро ОС.