К. Хамахер, З. Вранешич, С. Заки - Организация ЭВМ - 5-е издание (2003), страница 8
Описание файла
PDF-файл из архива "К. Хамахер, З. Вранешич, С. Заки - Организация ЭВМ - 5-е издание (2003)", который расположен в категории "". Всё это находится в предмете "операционные системы" из 3 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст 8 страницы из PDF
А память и процессор функционируют со скоростью электронных схем, благодаря чему являются самыми быстрыми частями компьютера. Поскольку все эти три типа устройств могут взаимодействовать между собой через шину, необходим такой механизм пересылки данных, который не ограничивал бы скорость обмена информацией между любыми двумя устройствами скоростью более медленного из них и сглаживал бы разницу в скорости работы процессора, памяти и внешних устройств. 34 Глава 1. Базовая струк1ура компьютеров Самый распространенный подход к решению этой задачи основан на использовании буферных реестров, которые встраиваются во внешние устройства для хранения получаемой ими информации.
Для примера давайте рассмотрим процесс передачи кода символа от процессора принтеру. Процессор пересылает данные по шине в буфер принтера. Поскольку буфер представляет собой электронный регистр, пересылка выполняется очень быстро. Когда буфер будет заполнен, принтер начнет печатать, и вмешательство процессора больше не потребуется.
Шина и процессор освобождаются для другой работы, которая может выполняться одновременно с печатью символа, хранящегося в буфере принтера. Таким образом, использование буферных регистров сглаживает различия в скорости функционирования процессора, памяти и устройств ввода-вывода и предотвращает блокирование высокоскоростного процессора медленными устройствами на все время выполнения операций ввода-вывода. Процессор может быстро переключаться от одного устройства к другому, обслуживая их параллельно. 1.5. программное обеспечение Для того чтобы пользователь мог запустить прикладную программу, в памяти компьютера должно уже содержаться некоторое системное программное обеспечение.
Системное проараммное обеспечение — это набор программ, предназначенных для выполнения следующих функций: + получение и интерпретация команд пользователя; + ввод и редактирование прикладных программ, их сохранение в файлах на вторичных запоминающих устройствах; + управление процессом сохранения файлов на вторичных запоминающих устройствах и извлечение их с указанных устройств; + запуск стандартных прикладных программ, таких как текстовые процессоры, электронные таблицы или игры, с данными, которые предоставляются пользователем; + управление устройствами ввода-вывода для получения входной информации и вывода выходных данных; + трансляция исходного кода программ, подготовленных ранее пользователем, в объектные модули, состоящие из машинных команд; + компоновка пользовательских прикладных программ со стандартными библиотечными подпрограммами (например, выполняющими числовые вычисления) и запуск результирующих программ.
Таким образом, системное программное обеспечение отвечает за координирование всех операций, выполняемых в компьютерной системе. В этом разделе мы рассмотрим его важнейшие аспекты. Прикладные программы обычно пишутся на языках программирования высокого уровня, в том числе на С, С++,)ача и РОВТЙА1ч', позволяющих программисту задать действия, которые должна выполнить программа (скажем, математические вычисления или обработку строк текста).
Такие операции описываются в формате, не зависящем от типа компьютера, который будет выполнять программу. 1.5. Программное обеспечение 35 Программисту, использующему язык высокого уровня, не нужно знать машинные команды и особенности их использования. Специальная системная программа, называемая компилятором, транслирует программу на языке высокого уровня в программу на машинном языке, состоящую из таких команд, как А<Ы и 1оаг1, о которых рассказывалось в разделе 1.3. Еще одна важная системная программа, которой пользуются все программисты, называется глекслю выл редактором.
Она предназначена для ввода и редактирования прикладных программ. Пользователь такой программы с помощью клавиатуры вводит и редактирует инструкции исходного текста программы и накапливает их в файле. Файл — зто просто последовательность буквенно-цифровьгх символов или двоичных данных, которая сохраняется в памяти или на вторичном запоминающем устройстве. К файлу можно обращаться по заданному пользователем имени.
В этой книге мы не станем подробно рассматривать компиляторы, редакторы и файловые системы, а сосредоточим внимание на ключевом компоненте системного программного обеспечения, называемом операционной системой (ОС). Это большая программа, а точнее, целый набор программ, используемый для управления взаимодействием различных устройств компьютера при выполнении прикладных программ. Компоненты операционной системы отвечают за предоставление прикладным программам ресурсов компьютера — основной памяти и памяти на магнитных дисках, устройств ввода-вывода и т. д. Чтобы понять назначение и основные принципы функционирования операционной системы, давайте рассмотрим систему с одним процессором, одним диском и одним принтером. Сначала мы обсудим процесс выполнения прикладной программы.
Когда он станет вам понятен, мы сможем поговорить о том, как операционная система организует одновременное выполнение нескольких прикладных программ. Предположим, у нас имеется уже откомпилированная прикладная программа, сохраненная в виде машинных команд на диске. Первым делом файл, в котором хранится зта программа, нужно переслать в память. Как только это будет сделано, начнется выполнение программы. Допустим, что в функции программы входит чтение файла данных с диска в основную память, выполнение определенных вычислений с этими данными и печать результатов.
Когда выполняемой программе потребуется файл данных, программа попросит операционную систему переслать ей таковой с диска в память. Операционная система выполнит этот запрос и вернет управление прикладной программе, которая перейдет к вычислениям. Когда вычисления будут завершены и придет время печати результатов, прикладная программа снова направит запрос операционной системе. В ответ будет осуществлена соответствующая программа операционной системы, которая обеспечит отправку нужных данных на принтер. Итак, вы видите, что при выполнении прикладной программы управление постоянно передается то ей, то программам операционной системы.
Процесс поочередного использования процессора можно проиллюстрировать линейной диаграммой, показанной на рис. 1.4. В течение времени от момента гс до момента г1 одна из программ операционной системы инициирует загрузку прикладной программы с диска в память, дожидается завершения процесса загрузки, а затем 36 Глава 1.
Базовая структура компьютеров передает управление прикладной программе. Аналогичные процессы происходят с момента гг до момента гз и с момента гг до момента гй когда операционная система считывает файл данных с диска в основную память и когда она печатает результаты. После момента времени гч операционная система может загрузить и выполнить другую прикладную программу.
Принтер Диск Программы ОС Прикладная программа го гз Время Рис. !.4. Поочередное использование процессора прикладной программой и программами операционной системы А теперь давайте рассмотрим способ более зффективного использования ресурсов компьютера, заключающийся в параллельном выполнении нескольких программ. Обратите внимание, что в течение отрезка времени от момента гг до момента гз ни процессор, ни диск не заняты никакой работой. В это время работает только принтер, и операционная система могла бы загрузить в память следующую программу. Аналогичным образом, в промежуток времени от гр до г1 операционная система могла бы печатать результаты, сгенерированные предыдущей программой (пока текущая программа загружается с диска).
Именно так операционная система управляет параллельным выполнением нескольких прикладных программ, обеспечивая поочередное использование ими ресурсов компьютера. Такая схема параллельного выполнения программ называется миогозадачносгнью. 1.6. Производительность Одним из важнейших критериев оценки производительности компьютера является то, насколько быстро он выполняет программы. Скорость выполнения программ компьютером зависит от конструкции его аппаратного обеспечения и от набора команд машинного языка. Поскольку программы обычно пишутся на языке высокого уровня, производительность зависит еще и от того, насколько удачно 1.б. Производительность 37 компилятор переводит их на машинный язык.