Абстракции, предоставляемые операционной системой

0

В книге "Компьютерная система: перспектива программиста" говорится, что "файлы являются абстракциями для устройств ввода-вывода, виртуальная память является абстракцией как для основной памяти, так и для устройств ввода-вывода на диске, а процессы - абстракции для процессора, основной памяти и устройства ввода/вывода ". Я этого не понимаю. Может кто-нибудь, пожалуйста, дать мне легкое для понимания объяснение?

  • 1
    То, что операционная система представляет вам как файл, на самом деле представляет собой набор битов на диске (конечно, при условии, что биты «настоящие»), но если вы этого не сделаете, вы оставляете CS для EE :). Файлы являются абстрактным, логичным способом организации этих битовых паттернов.
Теги:
architecture
operating-system
abstraction

1 ответ

0

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

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню