К. Хамахер, З. Вранешич, С. Заки - Организация ЭВМ - 5-е издание (2003) (1114649), страница 95
Текст из файла (страница 95)
Определяется наибольший элемент каждого столбца и все элементы столбца делятся на это значение. Допустим, что ка- ждая страница виртуальной памяти имеет размер 4 Кбайт, а для хранения данных в процессе вычислений выделен 1 Мбайт основной памяти. Пред- положим, что на загрузку страницы с диска в основную память при возник- новении ошибки страницы уходит 40 мс. а) Сколько страниц будет ошибочно загружено, если элементы массива хранятся в виртуальной памяти в порядке следования столбцов.
б) Сколько ошибок страниц произойдет в том случае, если элементы хранятся в порядке следования строк? в) Оцените общее время, необходимое на выполнение описанной процедуры при условиях, указанных в заданиях 5.21, а и 5.21, б. Рассмотрим компьютерную систему, в которой доступные страницы физи- ческой памяти разделяются между несколькими прикладными программа. ми. Когда все выделенные для программы страницы заполняются и требу- ется новая страница, она должна заменить одну из резидентных. Операци- онная система управляет пересылкой страниц и динамически выделяет их прикладным программам. Предложите стратегию, которая могла бы ис- пользоваться операционной системой для минимизации общего количест- ва операций пересылки страниц. В компьютере с системой виртуальной памяти выполнение команды может быть прервано из-за ошибки страницы.
Какую информацию о состояюш следует сохранить для того, чтобы впоследствии можно было возобновить реализацию этой команды? Учтите, что для переноса новой страницы в ос- новную память необходима операция ПДП, для которой требуется выполне- ние других команд. Не проще ли отменить прерванную команду, а затем за- дать ее сначала? Возможно ли это? Упражнения 403 5.24.
Когда программа генерирует ссылку на страницу, отсутствующую в основ- ной памяти, выполнение этой программы приостанавливается до тех пор, пока запрошенная страница не будет загружена в основную память. Какие трудности могут возникнуть в том случае, если команда находится на одной странице, а ее операнд на другой? Какими функциями должен обладать процессор, чтобы справиться с такой ситуацией? 5.25.
В дисковом устройстве имеется 24 поверхности, на которые может записы- ваться информация. Всего в нем 14000 цилиндров, на дорожке в среднем 400 секторов, а каждый сектор содержит 512 байт данных. а) Определите максимальное количество байтов, которое можно сохранить на таком устройстве. б) Какова скорость пересылки данных в байтах в секунду при скорости вращения магнитного диска 7200 об/мин? в) Предложите схему задания адреса данных на диске при условии, что используются 32 разрядные слова. 5.26.
Время поиска в сумме со временем задержки позиционирования при обра- щении к конкретному блоку данных на диске обычно значительно превышает время пересылки готовых данных. Рассмотрим процесс доступа к 3,5-дюймовому диску, описанному в разделе 5.9.1, для чтения или записи при условии, что средняя длина считываемого или записываемого блока равна 8 Кбайт. а) Вычислите в процентах среднее время, уходящее на поиск и позиционирование, по отношению к общему времени доступа, если блоки расположены на диске случайным образом.
б) Повторите упражнение 5.26, а для ситуации, когда блоки расположены на диске так, что в 90?4 случаев следующее обращение производится к данным, находящимся на том же цилиндре. 5.27. Среднее время поиска и задержка позиционирования составляют соответ- ственно 6 и 3 мс. Скорость пересылки данных с диска и на диск составляет 30 Мбайт/с, и прн каждом обращении считывается или записывается блок данных размером 8 Кбайт. Дисковый контроллер, контроллер ПДП, процессор и основная память соединены с одной 32-разрядной шиной. Передача данных по шине в основную память и из основной памяти занимает 10 нс. а) Каково максимальное количество дисковых устройств, которые могут одновременно пересылать данные в основную память и из нее? б) Сколько циклов основной памяти в процентах занимает дисковое устройство, которое в течение длительного периода времени выполняет пересылку независимых 8-килобайтовых данных? 528.
Если в качестве вторичного запоминающего устройства для хранения про- грамм и данных в системе виртуальной памяти используется магнитный диск, какие параметры этого диска должны быль учтены при выборе размера страницы? 404 Глава 5. Система памяти 5.29. Накопитель на магнитной ленте имеет следующие параметры: 2000 бит/см 80 см/с 225 мс Плотностью битов Скорость движения ленты Время на изменение направления перемотки Минимальное время прохода через пробел между записями Средняя длина записи 3 мс 4000 символов Оцените выигрыш во времени (в процентах), получаемый благодаря возможности читать записи в обоих направлениях. Предполагается, что доступ к записям осуществляется в произвольном порядке и что в среднем между двумя последовательно считываемыми записями расположено четыре записи.
Глава 6 Арифметика + Высокоскоростные сумматоры с параллельным переносом + Алгоритм Буга для умножения чисел со знаком + Высокоскоростные умножители, осуществляющие параллельное сложение на основе алгоритма сложения с сохранением переноса + Аппаратная реализация операции деления + Представление чисел с плавающей запятой в стандартном формате |ЕЕЕ и выполнение основных арифметических операций Работа всех компьютеров основана на одной элементарной основной операции— сложении (или вычитании) двух чисел.
Арифметические операции выполняются на уровне машинных команд. Эти команды, как и основные логические функции И, ИЛИ, НЕ и Исключающее ИЛИ, встроены в арифметике-логическое устройппво АРАЛУ) процессора. В настоящей главе мы познакомимся с логическими схемамн, реализующими встроенные арифметические операции. Производительность процессора зависит от скорости выполнения операции сложения, а также операций умножения и деления, схемы которых сложнее. Вы узнаете, как в современных компьютерах на аппаратном уровне решаются проблемы повышения скорости арифметических операций.
В отличие от логических, арифметические операции сложно реализовывать на основе комбинационных схем: в первом случае выполняются независимые булевы (логические) операции над отдельными битами операнда, а во втором используются дополнительные сигналы переноса или отрицательного переноса. В разделе 2.1 описывалось, как представлять двоичные числа со знаком, и было доказано, что при сложении и вычитании удобнее использовать систему дополнения до двух. На рис. 2.4 показан пример вычисления суммы двух и-разрядных чисел со знаком с помощью операции двоичного и-разрядного сложения.
Прн этом знаковый бит обрабатывается так же, как и остальные. Другими слованн, логические схемы для сложения двух двоичных чисел без знака могут быть использованы и для вычисления суммы чисел со знаком. В следующих двух разделах вы сможете познакомиться с логическими схемами для выполнения сложения и вычитания. 406 Глава 6. Арифметика 6.1. Сложение и вычитание чисел со знаком 1 1 О О 1 1 1 1 1 1 з, - хгу;сг + х;у;с; + х|угс; + хгу;с, - х;Эу;9с; с; г - у;с; + х;сг + хгуг Пример: Х 7 +У - +6 2 13 Входной перенос с, Легенда шага г Рис. 6.1.
Логическая спецификация одного шага двоичного слогкения На рис. 6.1 показана таблица истинности функций суммирования и переноса для поразрядного сложения чисел Х и К На атом же рисунке приведены логические выражения для указанных функций и примеры сложения 4-разрядных беззнаковых чисел 7 и 6. Обратите внимание на то, что на каждом шаге процесса сложения требуется разряд переноса. Входной перенос в позицию 1 (он же выходной перенос из позиции 1 — 1) мы обозначаем как сь Логическое выражение для з; на рис. 6.1 можно реализовать с помощью 3-вхсдового вентиля Исключающее ИЛИ, который на рис.
6.2, а включен в состав схемы, реализующей один шаг двоичного сложения. Функция выходного переноса, с;,ь представлена в виде двухуровневой логической схемы И-ИЛИ. Для полной схемы одного шага сложения, назьгваемой полным сумматором (ПС), мы использовали отдельное обозначение. При сложении двух и-разрядных двоичных чисел может использоваться каскадное соединение и блоков полных сумматоров (рис. 6.2, б). Поскольку переносы передаются от сумматора к сумматору, такая конфигурация называется п-разрядным сумматором с последовательным переносом (п-)з11 прр1е-саггу агЫег).
Входной перенос в позицию самого младшего разряда (Пеяз 61яп1Всап1 В!Д ЕЯВ) является удобным способом прибавления к числу единицы. Эта операция используется, например, при формировании дополнения числа до двух путем прибавления 1 к дополнению зтого числа до единицы. Сигналы переноса применяются также при соединении л сумматоров для образования более сложного сумматора, способного складывать числа длиной йп бит (рис.
6,2, в). с! сон с! Х! У! с, с, Яо Уо яо-! Уо-! со-! са с„ Позиция старшего разряда (МЯВ) «ы-! Уо -! х2п-! Ум-! «» Ую зо-! Уо-! зо Уо со зы-! зр-по зы! з„-! зо Рис. В.2. Логика сложения двоичных векторов: логика одного шага (а); и-разрядный сумматор с последовательным переносом (б); каскад и-разрядных сумматоров (в) х~ 5! с, 6.1. Сложение и вычитание чисел со знаком 407 зо Позиция млад!него разряда ().ЯВ) 408 Глава 6. Арифметика 6.1.1. Логический блок сложения/вычитания Для сложения дополнений чисел Хи Удо двух, в которых разряды х„1 ну, 1содержат знак числа, может использоваться я-разрядный сумматор (рис.