Логическая модель ЭВМ

Для дальнейшего изложения нам потребуется общее представление о структуре ЭВМ. Мы сразу ограничимся так называемой фон-Неймановской архитектурой, которая предполагает, что как программа, так и данные хранятся в памяти. Кроме того, мы (временно) исключим из рассмотрения работу с периферийными устройствами, различие между оперативной и внешней памятью и много другое, что подробно обсуждается в курсе по архитектуре ЭВМ. Нам будет достаточно схемы, представленной рис.1:

 

Рис. 1. Структура ЭВМ

Процессор состоит из исполнителя и вычислителя. Исполнитель выбирает из памяти очередную команду и при необходимости указывает вычислителю, какие операции и над какими данными надо выполнить. Вычислитель извлекает из памяти требуемые данные, выполняет операцию, помещает результат обратно в память и/или сообщает вычислителю о том, какую команду выбрать следующей. Таким образом, команды процессора можно разделить на:

· Арифметические и битовые, выполняемые вычислителем;

· Управляющие, выполняемые исполнителем;

· Присваивания, пересылки;

· Ввод/вывод.

Далее мы будем предполагать, что память дискретна, то есть является организованным набором битов. Бит – элементарная единица представления информации, имеющая два возможных значения – 0 и 1. Биты объединяются в байты - минимальные адресуемые группы из 8 битов. Из четырёх байтов формируется слово, с которым может оперировать машинная команда. Схематично это отображено на рис.2.

Рис. 2. Дискретная память

Не следует воспринимать эти сведения как догму. Так, можно поинтересоваться следующими вопросами:

· Почему бит содержит только два значения, а не три или, скажем, 10? Ведь, например, при математическом моделировании или финансовых расчетах мы изначальные данные вводим и выводим в десятичном виде;

· Почему в байте 8 бит? Ведь, например, для кодирования всех символов, доступных на клавиатуре, достаточно 6 битов;

· Почему в слове 4 байта, а не 2 или 6?

· Как нумеруются биты внутри байта и внутри слова?

Конечно, можно ответить: «Потому, что это так в моём компьютере», но вряд ли такой ответ можно признать удовлетворительным. И действительно, существуют такие компьютеры, в которых в байте 9 бит, и такие, в которых в слове 8 байт. И вполне возможно, что нам придётся писать программу, которая это учитывает.

Мы оставляем также в стороне более сложные вопросы, связанные с организацией памяти – сегментирование, виртуальную память, тегирование памяти и т.п. Сказанного выше достаточно для дальнейшего изложения.

Операционная система

Для того, чтобы программа попала в память и начала выполняться, необходимо выполнить определённые действия. Изначально эти действия выполнял оператор ЭВМ, заполняя с помощью тумблеров нужную область памяти кодом программы и её данными и нажимая по завершению этого процесса кнопку «Пуск», передавая программу на выполнение. Достаточно быстро этот рутинный процесс переложили на ЭВМ. Программа, обеспечивающая запуск других программ и их взаимодействие, называется операционной системой (ОС). Функции операционных систем постепенно усложнялись, и условно их можно разделить на внутренние и внешние. К внутренним функциям относятся, например, следующие:

· Управление ресурсами, основными из которых являются потребляемые программой процессорное время и оперативная память. Эта функция особенно важна, если ОС допускает одновременное выполнение нескольких программ, возможно, с разными приоритетами. Помимо времени и памяти к ресурсам можно относить и доступ к внешним устройствам, таким как принтер, сетевой трафик и т.п.

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

· Обработка аварийных ситуаций – «нормальное» завершение программы в случае, если программа попыталась выполнить запрещённую операцию (деление на ноль, обращение по несуществующему адресу и т.п.) или была насильно остановлена пользователем или самой операционной системой.

Внешние функции в большей степени видны пользователю:

· Создание процессов и их взаимодействие;

· Файловая система обеспечивает хранение данных на внешних носителях и имеет в большинстве случаев иерархическую систему каталогов, папок, директорий или т.п. С точки зрения программы, операционная система в значительной степени экранирует особенности конкретного физического носителя, будь то жесткий или компактный диск,  флеш-память и  т.п.;

· Безопасность – широкий круг вопросов, важнейшими из которых являются конфиденциальность данных и безотказная работа компьютера;

· Интерфейс – отрисовка окон, рассылка сообщений о действиях пользователя и т.п.;

· Полномочия пользователей – не все пользователи имеют равные права в системе;

· Статистика – сбор информации о функционировании системы, такой как загруженность, использование периферийных устройств, попытки проникновения извне с целью нанести вред.

Надо отметить, что как набор функций, так и само понятие операционной системы существенно меняется по мере развития информационных технологий. Да и сама операционная система построена зачастую как матрёшка, в самом центре которой находится ядро ОС, реализующее самый базовый уровень, т.е. управление драйверами, запуск и синхронизацию процессов и т.п., а каждая следующая оболочка строится с использований тех функций, которые предоставляет её «содержимое».


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: