AOP_Tom1 (1021736), страница 130

Файл №1021736 AOP_Tom1 (Полезная книжка в трёх томах) 130 страницаAOP_Tom1 (1021736) страница 1302017-07-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 130)

Змачит, начинать работу с такого размера блоков -- пустая трата времени, как и объединение в алгоритме Б блоков, образующих в результате свободный блок размерам, превосходящим 2"". ь 20. ]01] Поясните, каким образом можно использовать систему двойников для динамического выделения памяти г адресами от 0 до М вЂ” 1 даже в случае, когда М ме имеет вид 2 как требуется в тексте раздела, 27. ]34] Напишите М1Х-программу для алгоритма В и определите время ее работы.

23. ]35] Напишите М1Х-программу для алгоритма Я и определите время ее рабаты, считая М1Х двоичным компьютером с новой операцией ХОВ, с помощью обозначений из раздела 1.3.1 определяемой так: "С = 5, г = 5. Для каждого бита в ячейке М, равного 1, соответствующий бит в регистре А дополняется (изменяется г 0 ме 1 или с 1 на О); знак гА остается неизменным, время выполмемия равно 2и" 20, [УО] Мажет ли система двойммков работать без бита дескриптора в каждом выделеимам блоке? 30.

]М45] Проанализируйте среднее поведение алгоритмов В и Б, задавая обоснованные распределения для последовательности запросов иа выделемие памяти. 31. (М40] Можно ли построить аналогичную системе двойников систему динамического распределения намети, основанную на последовательности чисел Фибомаччи, а ме ма степенях двойки? (Таким образом, можно начать с Г,„свободных глав и разделить доступные блоки из Гь слов на два двойника длиной рь ~ и Ге е соответственно.) 32. (НМ47] Определите 1пп, а„, если ом существует, где а„— среднее змачемие 1„ в случайной паследовательмости, определенной таким образам.

Дины значения ее для 1 < й ( и; Ел равновероятна выбирается из множества значений (1, 2,..., ул], где уе ( 1 шш(10000> з ((х 1 1) Я вЂ” е 2) ° ~(Н (и 1)))] и )(х) = к при х > 0 и г(х) = сс при х ( О. ]Приме шиве. Некоторые аграмичеммые змпирические тесты показывают, что ол может быть примерно равна 14, на, вероятно, зто ме слишком точное значение.) ь 33. ]УУ] (Сборка мусоре и Уплашнеиме.) Положим, чта ячейки памяти 1, 2,..., ХКХ11 — 1 используются в качестве пула памяти для узлов перемеммага размера, имеющих следующий вид: первое слово МОРЕ(Р) содержит поля 312Е(Р) = количества слав е МРОЕ(Р); Т(Р) = количество полей связей в МОРЕ(Р); Т(Р) ( 312Е(Р); ь)МК(Р) = специальное пале связи для испальзовамиятолько при сборке мусора.

В памяти за МОРЕ(Р) следует МОРЕ(Р+ 3123(Р)). Предположим, чта в МОРЕ(Р) в качестве связей с другими узлами используются (1МК(Р+ 1), 01МК(Р+ 2),, Е!МК(Р+ Т(Р)) и каждое иэ этих полей связей представляет собой либо Л, либо адрес первого слава другого узла.

И наконец, предположим, чта в программе имеется еще одна переменная связи с именем ОБЕ, которая указывает на один из узлов. Разработайте алгоритм, который (!) определяет все узлы, прямо или косвенно доступные из переменной ОБЕ, (И) перемещает эти узлы в ячейки памяти ат 1 до К вЂ” 1 для некоторого К, изменяя все связи так, чтобы сохранились структурные отношения, и (!Й) устанавливает АЧАП. <- К. Например, рассмотрим следующее содержимое памяти, где 1МУО (1) обозначает содержимое ячейки 1, исключая ПИК(1): АЧА11 = 11, ОБЕ = 3.

1: 812Е=2,Т=1 2: !.1ИК = 6, 1ИРО ж А 3: Бтге=з,т=1 4: 1.1МК = 8, ТИБО = В 5: СОМТЕМТБ = С 6: 312Е=2,Тж0 7: сОитеи18 = 1) 8: ЯТЕМ ж 3, т = 2 9: !.1ИК = 8, 1МРО = Е 10; 1.1МК = 3, 1МУО = Р Ваш алгоритм должен преобразовать эти данные в 1: Бтге=з,т=1 4: 31ге=З,т=2 2: 1.1МК = 4, 1ИРО = В 5; 51ИК=4,1МРО=Е 3: СОМТЕМТБ = С 6: !.1МК = 1, 1МУО = Р АЧА11.

= 7, ОБЕ = 1. 34. [20[ Напишите И11-программу для алгоритма из упр. 33 и определите время ее рабо- ты. 35. [22) Сопоставьте методы динамического распределения памяти из этого раздела с технологиями последовательных списков переменного размера, рассмотренными в конце раздела 2.2.2. ь 36. [20) В некоторой закусочной в Голливуде (Калифорния) имеется 23 места для посетителей, которые приходят поодиночке или вдвоем. Хозяйка закусочной показывает посетитеэшм их места Докажите, что она всегда сможет рассадить посетителей, не разбивая пары, если одновременно в закусочной будет находиться не более 16 посетителей, а одиночки не сидят на местах 2, 5, 8, ..., 20 (предполагается, что каждая пришедшая пара уходит вместе). ° 37. [20] Продолжая упр. 36, докажите, чта хозяйка не всегда может так удачно рассадить посетителей, если в закусочной только 22 места, Независимо ат используемой ею стратегии может возникнуть ситуация, когда в закусочной будет находиться всего 14 посетителей, но для вошедшей пары не найдется двух соседних пустых мест.

38. [М21) (Д. М. Робсон (1. М. НаЬвоп).) Задача о закусочной, изложенная в упр. 36 и 37, может быть обобщена для определения производительности в наихудшем случае для любого алгоритма динамического выделения памяти, который никогда пе перемещает выделенные блоки. Пусть Ю(и,т) — наименьшее количество памяти, такое, что любая серия запросов на выделение и освобождение может быть выаолнена без переполнения в случае, когда все размеры блоков не превышают т, а общее количество затребованной памяти не превосходит п. В упр.

36 и 37 доказана, что )Ч(16, 2) = 23. Определите точное значение )Ч(п, 2) для всех п. 39. [НМЯЗ) (Д. М. Робсон.) Используя обозначения из упр. 38, покажите, чта )Ч(п1 + пш т) < Ж(пп тп) + )Ч(пм т) + ТЧ(2т — 2, т). Следовательно, для фиксираваннога т существует !пп,, )Ч(п,т)/п = Х(т). 40. [НМбб) Продолжая упр 39, определите )Ч(3), )Ч(4) и !1ш, )Ч(т)/!8 т, если таковой существует. 41. (М27) Назначение этого упражнения состоит в рассмотрении наихудшего случая использования памяти в системе двойников В частности, плохой случай возникает, например, если начать с пустой памяти и действовать следующим образом сначала выделить и = 2"е' блоков длиной 1, которые будут занимать адреса с Р по п — 1, затем для х' = 1, 2,, г освободить все блоки начинающиеся с адресов, которые не делятся на 2, и выделить 2 ~ 'облоков длиной 2", которые будут занимать адреса с 1(1+А)п по -'(2+ )с)п — 1 Для этой процедуры необходимо в 1 + -'г раз больше памяти, чем выделено Докажите, чта наихудший случай не может быть существенна хуже этого когда все запросы приходят на блоки размером 1, 2,, 2" и общий размер запрошенной памяти в любой момент не превышает и, где и кратно 2", система двойников никогда не переполнит область памяти размерам (г+ 1)п 42.

(М40) (Д М Робсон, 1975 ) Пусть Хвр(п, т) — количества памяти, необходимой, чтобы гарантировать отсутствие переполнения при использовании для выделения метода наилучшего подходящего, как в упр 38 Найдите "атакующую" стратегию, показывающую, что Хвр(п, т) ) гоп — О(п+ т ) 43. (НМЗ5) Продолжая упр 42, положим, чта Хрр(п, т) — необходимая при методе первага подходящего память Найдите "оборонительную" стратегию, показывающую, чта Хрр(п, т) < Н пДа 2 (Следовательно, наихудший случай стратегии первого подходящего не так далек ат наилучшего из наихудших случаев ) 44.

(М21] Предположим, чта функция распределения Г(х) = (вероятность того, что размер блока < х) непрерывна Например, Е(х) равна (х — а)/(Ь вЂ” а) при а < х < б, если размеры равномерно распределены между а и 6 Приведите формулу, выражающую размеры первых Х слатов при использовании метода распределенного подходящего 2.6. ИСТОРИЯ И БИБЛИОГРАФИЯ Диикйиын списки и прямоугольные массивы информации, содержащиеся в последовательных ячейках пймяти, широко использовались с первых дней появления компьютеров с хранимой программой, и в самых ранних работах по программированию приведены базовые алгоритмы для прохождения этих структур. (См., например, 3, хоп Хепшапп, Со!!ес!ес! Игаг)гя 5, 113-116 (написана в 1946 году); М. Ч. %!1!сеэ, Р.

3, %Ьее!ег, 6. О!И, ТЛе РгерагаВап аГ Ргойгвтв юг ап Е!ее!гоп!с Р!К!га! Сошрплег (Неа0!пй, Мавэл АсЫ!эоп-Жеэ!еу, 1951), эпЬгапВпе 1Ь1. Обратите особое внимание па работу Конрада Зусе (Копгас! Хпэе) ВеНсЛге с(ег Севе!!всЬаВ бйг Ма!Леша!!!г ппг! Рагепгегэгбе!гппд 63 (Вопп, 1972), написанную в 1945 гаду.

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

Д, Данлэп (3. Рпп!ар) из Р!к!ле)г Согрета!!ап разработал такие технологии до 1963 года в связи с созданием ряда компилирующих программ. Прилгерно в то же время данная идея независимо возникла при создании компилятора СОВОЬ в 1ВМ Согрогабоп и набора связанных с ним подпрограмм, называвшегося С1Т1Ж5, который впоследствии использовался в различных коллпьютерах.

Технологии оставались неопубликованными до тех пар, пока не были независимо разработаны Янам Гарвиком (3ап Оагибсй) нз Норвегии; см. ШТ 4 (1964), 137 — 140. Идея размещении линейного списка не в последовательных ячейках памяти, видимо, появилась в связи с разработкой компьютеров с устройствами хранения информации на магнитных барабанах. После выполнения кол~анды из ячейки и такой компьютер обычно не был готов к работе с командой нз следующей ячейки и + 1, так как барабан уже прошел эту точку.

В зависимости от выполняющейси команды наиболее благоприятным местом расположения следующей команды лложет оказаты'я, например, ячейка и+ 7 или и+ 18, и прн оптимальном размещении команд быстродействие мвшнвы может увеличиться в 6 — 7 раз. (Обсуждение интересных задач, относящихся к оптимальному расположению кол~вид, люжно найти в статье автора этой книги в 3АСМ 8 (1961), 119 — 150.] Поэтому в каждой машинной команде появлялось дополнительное адресное поле, служившее связью са следующей командой. Такая идея, названная "адресация 1+1", обсуждалась в работе 3о!лп МапсЫу, Т!лепту апг! Тес!лп!г!пеэ !ог гйе Рсв!кп оГ Е!ее!гоп!с Сошрпгегэ 4 (11.

о! Реппву!тап!а, 1946), Ьеслпге 37. В ней в зачаточной форме содержится понятие связанного списка, хотя так часто использовавшпесв нами в этой главе операции динамической вставки и удалении оставались неизвестными. Другое раннее упоминание о связях в программах приведено в меморандуме Г.

П. Дана (Н. Р. Ьпйп) (1953 г.), в котором для внешнего поиска предлагалось примешпь "цепочки" (гм. раздел 6.4). Реально технологии непользования связанной памяти родились, когда А. Ньювелл (А, 1чеэте!!), Д. К. Шоу (Л. С. 8Ьаи) и Г. А. Саймон (Н. А. Я)шоп) начали свои исследования эвристического решения задач с помощью компьютера. Весной 1956 года для написания программ поиска доказательств в математической логике онн разработали первый язык обработки списков — 1РЫ1. (1Р1. означает 1п(отшат!оп Ртосевгйпб Ьапбпабе — язык обработки информации.) Это была система, использующая указатели и включающая важные концепции наподобие списка свободного пространства, однако концепция стека тогда еще не была достаточно разработана. Созданный годом позже 1Р1.-Н1 включал команды для помещения в стек и выборки из стека в качестве важных основных операций.

Характеристики

Тип файла
DJVU-файл
Размер
7,53 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6458
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее