"Рас Сэйдж. Приемы профессиональной работы в UNIX" - читать интересную книгу автора


Ядро является следующим логическим продвижением вверх и концепци-
ей, которую можно теперь реализовать программно на условной машине.
Ядро предоставляет среду, поддерживающую еще большие абстракции, чем
те, что рассматривались до сих пор. Двумя наиболее важными абстракция-
ми на уровне ядра являются управление процессами для мультипрограмми-
рования и многозадачности, и файловая система, которая управляет хра-
нением, форматом, поиском файлов и т.п. Когда эти две области перепле-
таются, мы имеем базовую функцию многопользовательской машины и ядро
операционной системы.
Одной из наиболее важных областей, которыми управляет ядро, явля-
ется безопасность. Проверки идентификации пользователя выполняются в
системных вызовах внутри ядра. Определенные механизмы используются яд-
ром для управления безопасностью файлов, устройств, памяти и про-
цессов. Единственный способ отключить механизмы безопасности состоит
в изменении исходного кода ядра и перекомпиляции всей системы, что
крайне нежелательно.

УРОВЕНЬ 4 - ОПЕРАЦИОННАЯ СИСТЕМА

Данный уровень строится на ядре, чтобы создать полную операцион-
ную среду. Потребность в дополнительных функциях системы можно удов-
летворить созданием автономных программ, имеющих конкретное назначе-
ние. Таким образом, совокупность всех специфических функций определяет
операционную систему.

УРОВЕНЬ 5 - КОМПИЛЯТОРЫ

Компилятор - это инструмент (или программа), построенный на опе-
рационной системе для дальнейшей разработки более совершенных и более
мощных сред. Новые среды могут предполагать еще большие абстракции,
чем на нижнем уровне, и делать больше допущений о том, что уже сущест-
вует. Это делает возможным символические конструкции более высокого
уровня, такие как структуры данных и управляющие структуры. Результа-
том является прикладная программа.
С помощью компилятора мы можем определить совершенно новый язык и
сделать его рабочим на компьютере, написав компилирующую программу,
которая читает этот новый язык. Это открывает целые новые области во
взаимодействии человека с машиной. Высокоуровневые языки могут вопло-
щать различные подходы к решению задач, например, процедурную модель
или объектно-ориентированную модель, и в конце концов, очевидно, могут
достичь выразительной мощи разговорного языка типа английского.

УРОВЕНЬ 6 - ПРИКЛАДНЫЕ ПРОГРАММЫ

В наше время прикладные программы могут означать массу разнооб-
разных вещей. Мы можем предположить, что любая программа, которая сде-
лана с помощью компилятора, является прикладной программой. Примерами
возможных прикладных программ являются следующее поколение языков, ин-
терпретаторов и генераторов прикладных программ. Интерпретатор - это