Cтраница 4
Функциональная клавиатура пользователя имеет и следующие группы служебных клавиш: числовой информации ( цифры от 0 до 9, тире, пробел); управления маркером ( движения вверх, вниз, вправо, влево, ускоренного - автоматического движения, начальной установки маркера на первое знакоместо первой строки); видов операций: вывод и ввод - чтение из памяти и запись в память ЭВМ ин формации, листание - дискретная ( покадровая) смена информации на экране как вперед, так и назад, слежение - построчная смена информации на экране снизу вверх, стирание информации на экране снизу вверх, стирание информации в памяти ЭВМ по заданному адресу или заранее заложенному алгоритму в конкретных задачах, запоминание в памяти ОИУК информации по заранее заданному алгоритму в конкретных задачах, квитирование - останов вывода информации при слежении и обновлении текущих значений параметров и останов действия автоматических сигналов; просмотровки - перемещения изображения на экране вправо, влево, вверх и вниз ( для просмотра больших схем и таблиц); автономного режима работы дисплея или работы с ЭВМ; сброса - гашения изображения на экране. [46]
В условиях ограниченной памяти блоки-дублеры будут, как правило, изыматься из памяти при листании, а объектом листания могут быть концы очень больших основных блоков. Механизмы листания могут не дать схеме буферизации реализовать свое назначение. Если среднее время доступа к блоку на устройстве слияния ( диске) существенно больше, чем на устройстве листания ( например, барабане), то все равно, возможно, стоит использовать удвоенную буферизацию и разрешить листание. Повторный вызов блока с устройства листания может занимать меньше времени, чем ожидание считывания этого блока с медленного устройства. По отношению к блокам память с листанием действует как некоторое устройство, сбрасывающее ненужные элементы конструкции. Когда устройство листания и устройство слияния одинаковы, то использование буферизации с дублированием становится несколько подозрительным. Такая буферизация требует дополнительного пространства памяти и не гарантирует присутствия записи в памяти, когда она нужна центральному процессору. Однако, если буферизация с дублированием становится сомнительной, вся концепция равновесия между центральным процессором и вводом-выводом должна быть подвергнута кропотливому повторному анализу. Эта проблема сохранения совмещения ввода-вывода с работой центрального процессора встает особенно остро в системах с одноуровневой памятью, где весь ввод-вывод загнан в пространство виртуальной памяти и распределение данных очевидно для сортировки. [47]
Физически память машины Симбол состоит из оперативной ферритовой памяти объемом в 8 Кслов ( 32 страницы) и дисковой памяти объемом около 50000 страниц. Системный супервизор организует листание - перемещение виртуальных листов из дисковой памяти в оперативную и наоборот. Процессор, управляющий работой дисков, главным образом и занимается отысканием требуемого листа на дисках и выполняет необходимые пересылки. [48]
При необходимости для листания дерева каталогов следует пользоваться линейками прокрутки. [49]
Для среды с листанием, подходящим является такой алгоритм сортировки, который проявляет максимальную локальность и, как правило, образует линейную последовательность ссылок на сортируемый список. Поскольку многие из наиболее эффективных сортировок используют древовидные структуры с большим разбросом адресов по списку данных, то им должны быть присущи конфликты между минимизацией сравнений и минимизацией листания. На рис. 20.3 показан пример простой сортировки обменом 16 элементов. [50]
Обычным режимом Data-Star при работе с выдачей является режим ролика, при котором документы непрерывно сменяют друг друга. Таким образом, проблема листания страниц здесь не возникает. [51]
Лист разделен на три области. Первая область содержит описание листа и используется алгоритмом листания. [52]
Блоки, большие листа, естественно, более уязвимы для листания, чем блоки, равные или меньшие листа. Идеальная ситуация достигается при малых блоках, которые суммарно помещаются в листах. Пусть дан блок размером 2К, лист размером 4К и слияние степени 8; в этом случае четыре листа могут обеспечить буферизацию с дублированием, причем листания не будет, если для ввода можно гарантировать четыре листа. Если предпочтителен блок в 4К, то можно использовать какой-нибудь прием плавающего буфера. Однако, плавающие буферы представляют потенциальную опасность, потому что они вносят случайность в форму ссылок на буферы. [53]
Вместе с упрощением тонкостей программирования благодаря аппаратному управлению перезагрузкой модулей и ( возможно) вводом-выводом, виртуальная память вводит новый набор дисциплин программирования и стилей. Структура и стиль программирования влияют на поведение программ в среде с механизмом листания. Методы программирования, хорошие в прошлом, могут стать плохими при использовании листания. Например, переходы к подпрограммам могут увеличивать листание, если эти подпрограммы располагаются вне тех листов, из которых были обращения к подпрограммам. Таким образом, там, где используется листание, предпочтительнее копирование кода в строку. Возможно, программист захочет учесть листание в своей организации структур данных, для чего спланирует модули и связи. [54]