|
|
|
Исследование алгоритмов (модель) дискового планирования
|
|||
|---|---|---|---|
|
#18+
Дана задача Курсовой работы : Исследование алгоритмов (модель) дискового планирования № 2 1. Исходные данные: • количество цилиндров диска - 1024; • стартовый цилиндр - 500; • поступление запросов к дорожкам - случайное (генерировать датчиком случайных чисел); • среднее время поиска цилиндра - 10 мс; • скорость вращения - 7200 об/мин; • дорожка имеет 500 секторов; • производится чтение файла размером 1 Мбайт; • дисциплина обслуживания запросов - LIFO. 2. Результаты работы модели должны включать в себя: • график перемещения головок по цилиндрам; • количество пересеченных дорожек; • среднее время чтения файла; • средняя продолжительность поиска файла. Ищу любую бесплатную литературу по дисковому планированию на русском, пример решения этой задачи или её части на любом языке(желательно на Делфи) или блок схеме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2011, 20:49 |
|
||
|
Исследование алгоритмов (модель) дискового планирования
|
|||
|---|---|---|---|
|
#18+
Насколько я понимаю, тебе надо просто промоделировать процесс - что за чем читается, как мотаются головы, сколько это кушает времени и т.п., и выдать статистику и графики. Хотя модель дикая... одна обработка дисковых запросов стеком чего стОит... и ничего не сказано ни о блочном чтении, ни о кэшировании... а что такое "датчик (!) случайных чисел" - я вообще ХЗ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2011, 21:09 |
|
||
|
Исследование алгоритмов (модель) дискового планирования
|
|||
|---|---|---|---|
|
#18+
В задании не хватает начального состояния файловой системы. Я думаю это состояние придётся либо сымитировать либо взять готовое. И они будет влиять на производительность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2011, 21:18 |
|
||
|
Исследование алгоритмов (модель) дискового планирования
|
|||
|---|---|---|---|
|
#18+
AkinaХотя модель дикая... и ничего не сказано ни о блочном чтении, ни о кэшировании... А зачем? если "дисциплина обслуживания запросов - Last In First Out" - то вышеперечисленное и не нужно, ведь все предыдущие запросы сидят в стеке хоть до скончания времен, пока не исполнится (снимется) верхний (последний)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2011, 21:22 |
|
||
|
Исследование алгоритмов (модель) дискового планирования
|
|||
|---|---|---|---|
|
#18+
В принципе, суть задачи примерно понятна - логика диска передает данные физике диска на чтение данных. Передает набор фрагментов читаемого потока, по типу {HeadA,SecA,LenA; HeadB,SecB,LenB; ...} (вот эти данные и генерируются случайно, в пределах заданного размера) При этом логика сначала должна проанализировать и сформировать последовательность запросов таким образом, чтобы в стек физики укладывалась последовательность Head-Sector-Len с минимизацией переходов. А потом должна собрать вычиатнные фрагменты в нужной последовательности. И таким образом надо сформировать отчет по нескольким прогонам. Кстати, как я понимаю, размер сектора стандартный - 512 байт? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2011, 21:39 |
|
||
|
Исследование алгоритмов (модель) дискового планирования
|
|||
|---|---|---|---|
|
#18+
спасибо за советы Как я понял задачу : ввожу переменные количество цилиндров диска - 1024; • стартовый цилиндр - 500; • поступление запросов к дорожкам - случайное (генерировать датчиком случайных чисел); • среднее время поиска цилиндра - 10 мс; • скорость вращения - 7200 об/мин; • дорожка имеет 500 секторов; генерировать датчиком случайных чисел это как я понял Random чисел от 1 до 1024 Допустим Random выдал последовательность(887,442,555,456) головка HDD позиционирована на дорожке 500 тогда по системе LIFO обслуживание будет в порядке: Путь головки: 500 -> 456 (расстояние: 44) 456-> 555 (расстояние: 99) 555-> 442 (расстояние: 113) 442 -> 887 (расстояние: 445) Всего пройдено пути 701 ед. количество пересеченных дорожек 701 график строится по этим же точкам а как искать ? среднее время чтения файла; средняя продолжительность поиска файла ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2011, 10:32 |
|
||
|
Исследование алгоритмов (модель) дискового планирования
|
|||
|---|---|---|---|
|
#18+
Сергей_Мураткинспасибо за советы Как я понял задачу : ввожу переменные количество цилиндров диска - 1024; • стартовый цилиндр - 500; • поступление запросов к дорожкам - случайное (генерировать датчиком случайных чисел); • среднее время поиска цилиндра - 10 мс; • скорость вращения - 7200 об/мин; • дорожка имеет 500 секторов; генерировать датчиком случайных чисел это как я понял Random чисел от 1 до 1024 Допустим Random выдал последовательность(887,442,555,456) головка HDD позиционирована на дорожке 500 тогда по системе LIFO обслуживание будет в порядке: Путь головки: 500 -> 456 (расстояние: 44) 456-> 555 (расстояние: 99) 555-> 442 (расстояние: 113) 442 -> 887 (расстояние: 445) Всего пройдено пути 701 ед. количество пересеченных дорожек 701 график строится по этим же точкам а как искать ? среднее время чтения файла; средняя продолжительность поиска файла вам скорее все еще придеться эммулировать файловую систему))))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2011, 19:09 |
|
||
|
Исследование алгоритмов (модель) дискового планирования
|
|||
|---|---|---|---|
|
#18+
AndreTM... "дисциплина обслуживания запросов - Last In First Out" - ... все предыдущие запросы сидят в стеке хоть до скончания времен, пока не исполнится (снимется) верхний (последний)...И что? Если поступает последовательно 500 запросов на чтение 1 сектора каждый, и все секторы оказываются на одном цилиндре - без кэширования мы, как идиоты, будем выполнять их в течение 499 оборотов диска. А с кэшированием и предчтением - один раз читаем дорожку, и потом вываливаем данные из кэша... Хотя тупизм задания предполагает, что "производится чтение файла размером 1 Мбайт" и "поступление запросов к дорожкам - случайное" следует интерпретировать как "из исходного состояния прочитать 2к случайных секторов и вернуться на место", а всё остальное - шелуха. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2011, 21:15 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=37535819&tid=1342613]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
55ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 384ms |

| 0 / 0 |
