Книги
чёрным по белому
Главное меню
Главная О нас Добавить материал Поиск по сайту Карта книг Карта сайта
Книги
Археология Архитектура Бизнес Биология Ветеринария Военная промышленность География Геология Гороскоп Дизайн Журналы Инженерия Информационные ресурсы Искусство История Компьютерная литература Криптология Кулинария Культура Лингвистика Математика Медицина Менеджмент Металлургия Минералогия Музыка Научная литература Нумизматика Образование Охота Педагогика Политика Промышленные производства Психология Путеводители Религия Рыбалка Садоводство Саморазвитие Семиотика Социология Спорт Столярное дело Строительство Техника Туризм Фантастика Физика Футурология Химия Художественная литература Экология Экономика Электроника Энергетика Этика Юриспруденция
Новые книги
Цуканов Б.И. "Время в психике человека" (Медицина)

Суворов С. "Танк Т-64. Первенец танков 2-го поколения " (Военная промышленность)

Нестеров В.А. "Основы проэктирования ракет класса воздух- воздух и авиационных катапульных установок для них" (Военная промышленность)

Фогль Б. "101 вопрос, который задала бы ваша кошка своему ветеринару если бы умела говорить" (Ветеринария)

Яблоков Н.П. "Криминалистика" (Юриспруденция)
Реклама

Архитектура компьютера - Таненбаун Э.

Таненбаун Э. Архитектура компьютера — Спб.: Питер, 2007. — 844 c.
ISBN 5-469-01274-3
Скачать (прямая ссылка): arhkomputera2007.DjVu
Предыдущая << 1 .. 231 232 233 234 235 236 < 237 > 238 239 240 241 242 243 .. 422 >> Следующая

пакет пересылать. Предположим, что на обработку прерывания и проверку
пакета требуется 250 мке, но пересылка этого пакета в случае
необходимости совершается путем прямого доступа к памяти, поэтому
центральный процессор от этой работы освобожден. Если размер всех пакетов
равен 1 Кбайт, какова максимальная скорость передачи данных на каждой из
сетей?
39. На рис. 5.25 указатель фрейма указывает на первую локальную
переменную. Какая информация нужна программе, чтобы выйти из процедуры и
вернуться в исходное состояние?
40. Напишите подпрограмму на ассемблере для преобразования целого
двоичного числа со знаком в ASCII-код.
41. Напишите подпрограмму на ассемблере для преобразования инфиксной
формулы в обратную польскую запись.
42. Процедура для решения задачи "Ханойская башня" - не единственная
рекурсивная процедура, любимая многими компьютерщиками. Есть еще одна
очень популярная рекурсивная процедура гг!, где гг! = п(п - 1)!, которая
подчиняется ограничивающему условию 0! = 1. Напишите на вашем любимом
ассемблере процедуру для вычисления гг!.
43. Если вы не прочь пошевелить мозгами в свободное время, попробуйте
написать программу для решения задачи "Ханойская башня" без рекурсии, а
путем поддержания стека в массиве. (Имейте в виду, что решения вы по всей
вероятности найти не сможете.)
Глава 6
Уровень операционной системы
Как уже отмечалось, современный компьютер организован в виде иерархии
уровней, каждый из которых добавляет определенные функции к нижележащему
уровню. Мы рассмотрели цифровой логический уровень, уровень
микроархитектуры и уровень архитектуры команд. Настало время перейти к
следующему уровню - уровню операционной системы.
С точки зрения программиста, операционная система - это программа,
добавляющая ряд команд и функций к командам и функциям, предлагаемым
уровнем архитектуры команд. Обычно операционная система реализуется
программно, но нет никаких веских причин, по которым ее, как
микропрограммы, нельзя было бы реализовать аппаратно. Уровень
операционной системы показан на рис. 6.1.
Уровень 3
Уровень 2
Уровень 1
Рис. 6.1. Положение уровня операционной системы в иерархии
Хотя и уровень операционной системы, и уровень архитектуры команд
абстрактны (в том смысле, что не являются реальными устройствами), между
ними есть важное различие. Все команды уровня операционной системы
доступны для прикладных программистов. Это - практически все команды
более низкого уровня, а также новые команды, добавленные операционной
системой. Новые команды называются системными вызовами. Они вызывают
предопределенную службу операционной системы, в частности одну из ее
команд. Обычный системный вызов считывает какие-нибудь данные из файла.
Уровень операционной системы всегда интерпретируется. Когда
пользовательская программа вызывает команду операционной системы,
например чтение данных из файла, операционная система выполняет эту
команду шаг за шагом, точно так же, как микропрограмма выполняет команду
ADD. Однако когда программа вызывает команду уровня архитектуры команд,
эта команда выполняется непосредственно уровнем микроархитектуры без
участия операционной системы.
476 Глава 6. Уровень операционной системы
В этой книге мы можем рассказать об уровне операционной системы лишь в
общих чертах. Мы сосредоточимся на трех важных особенностях. Первая
особенность - это виртуальная память. Виртуальная память используется
многими операционными системами. Она позволяет создать впечатление, будто
у машины больше памяти, чем есть на самом деле. Вторая особенность -
файловый ввод-вывод. Это понятие более высокого уровня, чем команды
ввода-вывода, которые мы рассматривали в предыдущей главе. Третья
особенность - параллельная работа (несколько процессов могут выполняться,
обмениваться информацией и синхронизироваться). Понятие процесса является
очень важным, и мы подробно рассмотрим его далее в этой главе. Под
процессом можно понимать работающую программу и всю информацию о ее
состоянии (памяти, регистрах, счетчике команд, вводе-выводе и т. д.).
После обсуждения этих основных характеристик мы покажем, как они
применяются к операционным системам двух машин из трех наших примеров:
Pentium 4 (Windows ХР) и UltraSPARC III (UNIX). Поскольку процессор 8051
обычно используется для встроенных систем, у этой машины нет операционной
системы.
Виртуальная память
В первых компьютерах память была очень мала по объему и к тому же дорого
стоила. IBM-650, ведущий компьютер того времени (конец 50-х годов),
содержал всего 2000 слов памяти. Один из первых 60 компиляторов ALGOL был
написан для компьютера с объемом памяти всего 1024 слова. Древняя система
с разделением времени прекрасно работала на компьютере PDP-1, общий объем
памяти которого составлял всего 4096 18-разрядных слов для операционной
системы и пользовательских программ. В те времена программисты тратили
очень много времени, пытаясь вместить свои программы в крошечную память.
Предыдущая << 1 .. 231 232 233 234 235 236 < 237 > 238 239 240 241 242 243 .. 422 >> Следующая