Охарактеризуйте организацию файловых систем FAT. — КиберПедия 

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

Охарактеризуйте организацию файловых систем FAT.

2017-06-05 224
Охарактеризуйте организацию файловых систем FAT. 0.00 из 5.00 0 оценок
Заказать работу

FAT (англ. File Allocation Table — «таблица размещения файлов») — классическая архитектура файловой системы, которая из-за своей простоты всё ещё широко используется для флеш-накопителей. Используется в дискетах и некоторых других носителях информации. Ранее использовалась и на жестких дисках.

– Загрузочный сектор

В начале раздела диска с файловой системой FAT располагается загрузочный сектор. Он необходим для начальной загрузки компьютера. Так же в нем располагается информация о параметрах данного раздела.

– Таблица размещения файлов (File Allocation Table)

Вся область данных диска разделена на кластеры – блоки, размер которых задается при форматировании диска. На дискете, например, размер кластера равен 512-ти байтам. А на современных винчестерах с объемом диска более 32 Гб размер кластера равен 32 Кб. Каждый файл и каталог занимает один или несколько кластеров. Таким образом, образуются цепочки кластеров.

В таблице размещения файлов каждый кластер помечается специальным образом. Размер метки в битах для каждого кластера указывается в названии файловой системы. Т.е. для файловой системы FAT16 размер метки будет равен 16-ти байтам, для FAT32 – 32-м и т.д.

Всего существует три типа меток для кластеров:

  • Свободный кластер – кластер, в который будут записываться новые файлы и каталоги.
  • Занятый кластер – в метке указывается следующий кластер в цепочке. Если цепочка кластеров заканчивается, то кластер помечается особой меткой.
  • BAD-блок – кластер с ошибками доступа. Помечается при форматировании диска, что бы исключить в последующем доступ к нему.

Повреждение таблицы размещения файлов полностью уничтожает структуру файловой системы, поэтому на диске всегда хранится две копии таблицы.

– Корневой каталог

Область диска, в котором располагается информация о корневом каталоге. Размер ее ограничен, поэтому в корневом каталоге диска может находиться не более 512-ти файлов и подкаталогов.

– Область данных

Оставшаяся часть раздела, на которой размещается содержимое файлов и каталогов.

Охарактеризуйте организацию файловых систем NTFS.

 

NTFS (от англ. New Technology File System — «файловая система новой технологии») — стандартная файловая система для семейства операционных системMicrosoft Windows NT.

NTFS заменила использовавшуюся в MS-DOS и Windows файловую систему FAT. NTFS поддерживает систему метаданных и использует специализированные структуры данных для хранения информации о файлах для улучшения производительности, надёжности и эффективности использования дискового пространства. NTFS хранит информацию о файлах в главной файловой таблице — Master File Table (MFT). NTFS имеет встроенные возможности разграничения доступа к данным для различных пользователей и групп пользователей (списки контроля доступа — Access Control Lists (ACL)), а также назначать квоты (ограничения на максимальный объём дискового пространства, занимаемый теми или иными пользователями). NTFS использует системужурналирования USN для повышения надёжности файловой системы. Размер кластера по умолчанию для файловой системы NTFS составляет от 512 байт до 64 КБ в зависимости от размера тома и конкретной версии ОС[5].

Структура NTFS

В начале тома находится загрузочная запись тома (Volume Boot Record), в которой содержится код загрузки Windows, информация о томе (в частности, тип файловой системы), адреса системных файлов ($Mft и $MftMirr – см. далее). Загрузочная запись занимает обычно 8 КБ (16 первых секторов).

В определенной области тома (адрес начала этой области указывается в загрузочной записи) расположена основная системная структура NTFS – главная таблица файлов (Master File Table, MFT). В записях этой таблицы содержится вся информация о расположении файлов на томе, а небольшие файлы хранятся прямо в записях MFT.

Важной особенностью NTFS является то, что вся информация, как пользовательская, так и системная, хранится в виде файлов. Имена системных файлов начинаются со знака "$". Например, загрузочная запись тома содержится в файле $Boot, а главная таблицафайлов – в файле $Mft. Такая организация информации позволяет единообразно работать как с пользовательскими, так и с системными данными на томе.

Поскольку MFT является важнейшей системной структурой, к которой при операциях с томом наиболее часто происходят обращения, выгодно хранить файл $Mft в непрерывной области логического диска, чтобы избежать его фрагментации (размещения в разных областях диска), и, следовательно, повысить скорость работы с ним. С этой целью при форматировании тома выделяется непрерывная область, называемая зоной MFT (MFT Zone). По мере увеличения главной таблицы файлов, файл $Mft расширяется, занимая зарезервированное место в зоне.

Остальное место на томе NTFS отводится под файлы – системные и пользовательские.

 


Основы работы WINDOWS. Многозадачность

 

  1. Приоритеты в Windows

Windows поддерживает 6 классов приоритета:

· idle (простаивающий)

· below normal (ниже обычного)

· normal (обычный)

· above normal (выше обычного)

· high (высокий)

· real-time (реального времени)

Самый распространённый класс приоритетов normal. Его используют 99% приложений.

 

Real-time Потоки в этом процессе обязаны немедленно реагировать на события, обеспечивая выполнение критических по времени задач. Такие потоки вытесняют даже компоненты ОС.
High Потоки в этом процессе тоже должны немедленно реагировать на события, обеспечивая выполнение критических по времени задач. Этот класс присвоен, например, Task Manager, что даёт возможность пользователю закрывать больше неконтролируемые процессы.
Above normal Класс приоритета промежуточный между normal и high. Это новый класс, введенный в Windows 200.
Normal Потоки в этом процессе не представляют особых требований к выделению им процессорного времени.
Below normal Класс приоритета промежуточный между normal и idle. Это новый класс, введенный в Windows 200.
Idle Потоки в этом процессе выполняются, когда система не занята другой работой. Этот класс приоритета обычно используется для утилит, работающих в фоновом режиме, экранных заставок и приложений, собирающих статистическую информацию.  

 

 

  1. Алгоритм планирования потоков

 

Когда компьютер работает в многозадачном режиме, на нем могут быть активными несколько процессов, пытающихся одновременно получить доступ к процессору. Эта ситуация возникает, когда два и более процессов находятся в состоянии готовности. Если доступен только один процессор, необходимо выбирать

между процессами. Отвечающая за это часть операционной системы называется

планировщиком, а используемый алгоритм — алгоритмом планирования.

 

Планирование требуется в самых разных ситуациях. Оно, безусловно, необходимо в двух случаях.

1. При завершении процесса.

2. При блокировании процесса семафором или вводом-выводом.

Обе ситуации приводят к тому, что выполнение текущего процесса прекращается, а значит, требуется выбрать следующий процесс для запуска.

 

Планирование обычно осуществляется еще в трех случаях, хотя и без жесткой

логической необходимости.

1. При создании нового процесса.

2. При прерывании ввода-вывода.

3. При прерывании от таймера.

 

Когда появляется новый процесс, имеет смысл заново оценить приоритеты.

Иногда родительский процесс может запросить другой уровень приоритета для

дочернего процесса.

 

Прерывание ввода-вывода, как правило, означает окончание работы устройства

ввода-вывода. В этом случае существует вероятность, что блокированный ранее процесс может быть запущен.

 

Прерывание от таймера дает возможность проверить, не выполняется ли текущий процесс слишком долго.

 

С точки зрения реакции на прерывания от таймера алгоритмы планирования делятся на два класса.

· При невытесняющем алгоритме планирования процесс выбирается и выполняется до блокирования (вызванного вводом-выводом либо ожиданием другого процесса) или добровольного завершения.

· При вытесняющем алгоритме планирования процесс выбирается и выполняется в течение некоторого временного интервала. Если по окончании интервала процесс не завершил работу, он приостанавливается, а планировщик выбирает другое задание (при его наличии).

При вытесняющем планировании необходимо прерывание от таймера в конце каждого временного интервала с последующей передачей процессора под управление планировщика. В отсутствие таймера невытесняющий алгоритм является единственным вариантом планирования.

 

В зависимости от особенностей окружения возникает потребность в различных алгоритмах планирования. Различные области применения и виды операционных систем преследуют разные цели, а, значит, планировщик по-разному должен оптимизировать управление процессами. Отметим три варианта окружения.

1. Системы пакетной обработки.

2. Интерактивные системы.

3. Системы реального времени.

 

В системах пакетной обработки не существует проблемы пользователей, ожидающих у своих терминалов как можно более скорой реакции системы. Таким

образом, вполне приемлемым является применение невытесняющих алгоритмов

планирования или вытесняющих алгоритмов с длительным временным интервалом. Эти алгоритмы позволяют повысить производительность за счет уменьшения количества переключений между процессами.

 

В окружении с интерактивными пользователями необходимо вытеснение, позволяющее избежать захвата процессора одним процессом и отказа в обслуживании всем остальным. Даже если ни один из процессов не «зациклится» из-за ошибки в программе, возможны ситуации, в которых процесс парализует работу системы. Вытеснение предотвращает подобное поведение.

 

В системах реального времени вытеснение не всегда оказывается необходимым. Дело в том, что процессы в таких системах должны работать быстро, а значит, и блокирование не бывает долгим. Системы реального времени содержат только те программы, которые требуются для решения конкретных задач.

Интерактивные системы, напротив, являются универсальными и могут включать

самые разные программы, в том числе бесполезные и даже вредоносные.

 

Планирование в системах пакетной обработки:

· Первым пришел — первым обслужен. Согласно этому алгоритму, процессы обрабатываются в порядке поступления запросов на использование процессора.

· Самое короткое задание — первое.

· Задание с наименьшим временем завершения — следующее. Если новое задание можно выполнить быстрее, чем закончить текущее, текущее задание приостанавливается, а новое задание принимается к обработке.

· Трехуровневое планирование. После поступления в систему новые задания сначала помещаются в очередь, хранимую на жестком диске. Далее планировщик допуска решает, какие задания принять в систему. Остальные ожидают во входной очереди, пока не будут выбраны планировщиком. Планировщик допуска может выбирать задания из очереди по собственному усмотрению, независимо от того, какие из них пришли раньше, а какие — позже.

Планирование в интерактивных системах

· Циклическое (карусельное) планирование. Каждому процессу предоставляется некоторый интервал времени процессора, так называемый

квантом. Если к концу кванта процесс все еще работает, он прерывается, а управление передается другому процессу. Разумеется, если процесс блокируется или прекращает работу раньше, переход управления происходит в этот момент.

· Приоритетное планирование. Основная идея проста: каждому процессу присваивается свой приоритет и управление передается готовому к работе процессу с самым высоким приоритетом.

· Планирование с несколькими очередями.

· Самый короткий процесс — следующий

· Гарантированное планирование

· Лотерейное планирование

· Справедливое планирование

 

 

  1. Тип многозадачности для приложения DOS

 

DOS является однозадачной операционной системой. Тем не менее, программисты нашли путь преодоления этих препятствий, преимущественно при использовании резидентных (terminate-and-stay-resident, TSR) программ. Некоторые TSR-программы, такие как спулер печати, использовали прерывание аппаратного таймера для выполнения процесса в фоновом режиме. Другие, подобно всплывающим (popup) утилитам, таким как SideKick, могли выполнять одну из задач переключения – приостановку выполнения приложения на время работы утилиты. DOS также была усовершенствована для обеспечения поддержки резидентных программ.

Некоторые производители программного обеспечения пытались создать многозадачные оболочки или оболочки, использующие переключение между задачами, как надстройки над DOS (например, Quarterdeck's DeskView).

 

 

  1. Гарантии обслуживания

 

Чтобы не возникло ситуации в которой низкоприоритетные процессы обделены процессорным временем, существуют механизмы гарантии обслуживания.

 

Более жестким требованием к системе, чем просто гарантированное завершение процесса, является его гарантированное завершение к указанному моменту времени или за указанный интервал времени.

 

Планирование с учетом жестких временных ограничений легко реализовать, организуя очередь готовых к выполнению задач в порядке возрастания их временных ограничений. Основным недостатком такого простого упорядочения является то, что задача (за счет других задач) может быть обслужена быстрее, чем это ей реально необходимо. Чтобы избежать этого, проще всего процессорное время выделять квантами. А после получения задачей своего кванта времени операционная система, оценив некоторое множество факторов (важных с точки зрения оптимизации распределения процессорного времени и гарантий обслуживания к заданному сроку), может переназначить приоритет задаче. Это позволит ей более гибко использовать механизм приоритетов и иметь механизмы гарантии обслуживания.

 

Гарантировать обслуживание можно, например, следующими тремя способами.

1. Выделять минимальную долю процессорного времени некоторому классу процессов, если по крайней мере один из них готов к исполнению. Например, можно отводить 20 % от каждых 10 мс процессам реального времени, 40 % от каждых 2 с — интерактивным процессам и 10 % от каждых 5 мин — пакетным (фоновым) процессам.

2. Выделять минимальную долю процессорного времени некоторому конкретному процессу, если он готов к выполнению.

3. Выделять столько процессорного времени некоторому процессу, чтобы он мог выполнить свои вычисления к сроку.

 

Для сравнения алгоритмов диспетчеризации обычно используются некоторые критерии.

· Загрузка центрального процессора (CPU utilization). В большинстве персональных систем средняя загрузка процессора не превышает 2-3 %, доходя в моменты выполнения сложных вычислений и до 100 %. В реальных системах, где компьютеры (например, серверы) выполняют очень много работы, загрузка процессора колеблется в пределах от 15-40 % (для легко загруженного процессора) до 90-100 % (для тяжело загруженного процессора).

· Пропускная способность центрального процессора (CPU throughput). Пропускная способность процессора может измеряться количеством процессов, которые выполняются в единицу времени.

· Время оборота (turnaround time). Для некоторых процессов важным критерием является полное время выполнения, то есть интервал от момента появления процесса во входной очереди до момента его завершения. Это время названо временем оборота и включает время ожидания во входной очереди, время ожидания в очереди готовых процессов, время ожидания в очередях к оборудованию, время выполнения в процессоре и время ввода-вывода.

· Время ожидания (waiting time). Под временем ожидания понимается суммарное время нахождения процесса в очереди готовых процессов.

· Время отклика (response time). Для интерактивных программ важным показателем является время отклика, или время, прошедшее от момента попадания процесса во входную очередь до момента первого обращения к терминалу.

 

Очевидно, что простейшая стратегия краткосрочного планировщика должна быть направлена на максимизацию средних значений загруженности и пропускной способности, времени ожидания и времени отклика.

 

Правильное планирование процессов в значительной степени влияет на производительность всей системы.

Одним из основных методов гарантии обслуживания является использование динамических приоритетов.

 

 

  1. Планирование процессов переднего плана

Когда пользователь работает с окнами какого-то процесса, последний считается активным, а остальные процессы – фоновыми. Естественно, пользователь заинтересован в повышении отзывчивости активного процесса по сравнению с фоновыми. В Windows, когда процесс становится активным, система выделяет его потокам больший приоритет и более длительные кванты времени.

 

 

  1. Назначение файла подкачки

Оперативной памяти иногда оказывается недостаточно для того, чтобы вместить все текущие активные процессы, и тогда избыток процессов приходится хранить на диске, а для обработки динамически переносить в память.

 

Существует два основных подхода к управлению памятью.

· Самая простая стратегия, называемая подкачкой (swapping), заключается в том, что каждый процесс полностью копируется в память, работает некоторое время и затем полностью же возвращается на диск.

· Другая стратегия, носящая название виртуальной памяти, позволяет программам работать даже тогда, когда они только частично находятся в оперативной памяти.

 

Работа системы с подкачкой. На начальной стадии в памяти находится только процесс А. Затем создаются или загружаются с диска процессы В и С. Потом процесс А выгружается на диск. Затем появляется процесс Д а процесс В завершается. Наконец, процесс А снова возвращается в память. Так как теперь процесс А расположен в другом месте, его адреса должны быть перенастроены либо программно во время загрузки в память, либо аппаратно во время выполнения программы.

 

Когда в результате подкачки в памяти появляется множество неиспользованных

фрагментов, их можно объединить в один большой блок, передвинув все процессы в сторону младших адресов настолько, насколько это возможно. Такая операция называется уплотнением, или сжатием, памяти. Обычно ее не выполняют по причине экономии времени работы процессора.

 

Еще один момент, на который стоит обратить внимание: сколько памяти должно

быть предоставлено процессу, когда он создается или копируется с диска? Если

процесс имеет фиксированный размер, размещение происходит просто: операционная система предоставляет точно необходимое количество памяти, ни больше, ни меньше, чем нужно.

 

Однако если область данных процесса может расти, например, в результате динамического распределения памяти из кучи, что позволяют многие языки

программирования, проблема предоставления памяти возникает каждый раз,

когда процесс пытается увеличиться. Если область неиспользованной памяти рас-

положена рядом с процессом, ее можно отдать процессу, позволив ему вырасти

на величину этой области. Если же процесс соседствует с другим процессом, для

его увеличения нужно либо переместить достаточно большой свободный фрагмент памяти, или перегрузить на диск один или больше процессов с целью создать незанятый фрагмент достаточного размера. Если процесс не может расти

в памяти, а область на диске, предоставленная для подкачки, переполнена, процесс будет вынужден завершиться или ждать освобождения памяти.

 

Если предположить, что большинство процессов растет во время работы, вероятно,

сразу стоит предоставлять им несколько больше памяти, чем требуется, а всякий

раз, когда процесс копируется на диск или перемещается в памяти, придется обрабатывать служебные данные, связанные с перемещением или подкачкой процессов, больше не умещающихся в предоставленной им памяти. Но когда процесс выгружается на диск, вместе с ним должно сохраняться содержимое только действительно используемого адресного пространства, так как очень расточительно перемещать также и придерживаемую им «про запас» память.

 

 

  1. Процессы Р1, Р2, Р3 выделяют 100, 20, 80 Мб памяти. В системе 128Мб ОП. Каков размер занятой памяти в файле подкачки. Какой размер файла подкачки.

 

Файл подкачки Оперативная память
С (80) А + В (120)
А + В (120) С (80)
В + С (100) А (100)
А (100) С + В (100)
А + С (180) В (20)
А + В + С (200) -

 

Минимальный размер файла подкачки 200 Мб.

 

  1. Что такое «страничная ошибка»?

Когда процесс обращается к странице, не отображаемой в данный момент, он инициирует ошибку отсутствия страницы. Обработчик ошибок отсутствия страниц,

находящийся в ядре или в пользовательском пространстве, находит машину, содержащую страницу, и посылает ей сообщение с запросом на выгрузку страницы

и ее отправку по сети. Когда страница прибывает, она попадает в карту, и прерванная команда перезапускается.

 

 

  1. Высокая интенсивность ошибок страниц говорит о:

- ненадежности программы

- ненадежности оперативной памяти

- иное: пояснить

 

Процессу надо много памяти по сравнению с размером оперативной памяти.

Плохая оптимизация распределения памяти в ОС.

 

 

  1. Как формируется приоритет потока в Windows

 

Приоритет потока в Windows формируется исходя из класса приоритета процесса и относительного приоритета потока.

 

Относительный приоритет потока Класс приоритета процесса
Idle Below normal Normal Above normal High Real-time
Time-critical            
Highest            
Above normal            
Normal            
Below normal            
Lowest            
Idle            

 

 

  1. Что такое относительный приоритет потока?

 

Windows поддерживает 7 относительных приоритетов потоков. Эти приоритеты относительны классу приоритета процесса. Как обычно, большинство потоков

использует обычный приоритет.

 

Относительный приоритет потока Описание
Time-critical Поток выполняется с приоритетом 31 в классе real-time и с приоритетом 15 в других классах
Highest Поток выполняется с приоритетом на два уровня выше обычного для данного класса
Above normal Поток выполняется с приоритетом на один уровень выше обычного для данного класса
Normal Поток выполняется с обычным приоритетом процесса для данного класса
Below normal Поток выполняется с приоритетом на один уровень ниже обычного для данного класса
Lowest Поток выполняется с приоритетом на два уровня ниже обычного для данного класса
Idle Поток выполняется с приоритетом 16 в классе real-time и с приоритетом 1 в других классах

 

 

  1. Что такое «динамический приоритет» потока?

 

Уровень приоритета, получаемый комбинацией относительного приоритета потока

и класса приоритета процесса, которому принадлежит данный поток, называют базовым уровнем приоритета потока. Иногда система изменяет уровень приоритета

потока. Обычно это происходит в ответ на некоторые события, связанные с вводом-

выводом (например, на появление оконных сообщений или чтение с диска).

 

Система повышает приоритет только тех потоков, базовый уровень которых находится в пределах 1–15. Именно поэтому данный диапазон называется «областью

динамического приоритета» (dynamic priority range). Система не допускает динамического повышения приоритета потока до уровней реального времени (более 15).

 

Поскольку потоки с такими уровнями обслуживают системные функции, это ограничение не дает приложению нарушить работу операционной системы. И, кстати, система никогда не меняет приоритет потоков с уровнями реального времени (от 16 до 31).

 

Есть еще одна ситуация, в которой система динамически повышает приоритет

потока. Представьте, что поток с приоритетом 4 готов к выполнению, но не может

получить доступ к процессору из-за того, что его постоянно занимают потоки с приоритетом 8. Это типичный случай «голодания» потока с более низким приоритетом.

 

Обнаружив такой поток, не выполняемый на протяжении уже трех или четырех секунд, система поднимает его приоритет до 15 и выделяет ему двойную порцию времени. По его истечении потоку немедленно возвращается его базовый приоритет.

 

 

  1. Понятие кэширование и кэш-памяти.

 

Кэш процессора — это быстродействующая память небольшого объёма, используемая для уменьшения (в среднем) времени доступа процессора к медленной оперативной памяти. Кэш хранит копию части данных оперативной памяти.

 

Уменьшение времени доступа происходит из-за того, что большинство данных, требуемых процессором, оказываются в кэше, и количество обращений к оперативной памяти снижается.

 

Кэш состоит из собственно кэш-памяти, и кэш-контроллера. Кэш-контроллер управляет кэш-памятью: загружает в неё нужные данные из оперативной памяти, и возвращает, когда нужно, модифицированные процессором данные в оперативную память.

 

Важно понимать, что кэш всегда «полон», так как оставлять часть кэш-памяти «пустой» было бы совершенно нерационально. Новые данные попадают в кэш только путём вытеснения (замещения) каких-либо старых данных.

 

Когда процессор хочет прочесть (или записать) данные по какому-либо адресу оперативной памяти, он передаёт этот адрес в контроллер кэш-памяти. Контроллер по некоторому алгоритму определяет, содержатся ли в кэш-памяти данные, соответствующие полученному от процессора адресу. Если данные найдены (это событие называется попаданием в кэш, cache hit), то кэш-контроллер выдаёт требуемые данные процессору (в случае чтения), либо перезаписывает их полученными от процессора данными (в случае записи). Если же данные не найдены (промах кэша, cache miss), то производится обращение к оперативной памяти, и процессор вынужден ждать.

 

 

  1. От чего зависит эффективность работы кэш-памяти.

 

Эффективностью кэша называется отношение числа попаданий кэша к общему количеству обращений процессора. Эффективность, таким образом, — это число от 0 до 1. Нулевая эффективность означает, что кэш нисколько не ускорил работу системы; эффективность, равная единице, означает, что ускорение максимально, и время обращения к памяти определяется скоростью работы кэша, а не скоростью работы оперативной памяти.

 

Эффективность кэша зависит от следующих факторов:

· Объём кэша. Чем больше объём кэша, тем большую часть требуемых программе данных он может в себе содержать, тем реже будут происходить обращения к оперативной памяти, и тем выше будет общее быстродействие системы.

· Алгоритм функционирования кэша. К сожалению, зачастую объёма кэш-памяти недостаточно для того, чтобы вместить все необходимые для вычислений данные. В этом случае кэш-контроллер должен «решить», какие именно данные следует держать в кэше. Поэтому кроме объёма кэша важным является алгоритм его функционирования: кэш, оснащённый хорошим алгоритмом, будет гораздо эффективнее использовать свой объём, храня меньше ненужных данных.

· Выполняемая процессором программа. Кэш оказывается эффективным потому, что большинство компьютерных программ обращаются к памяти не случайным образом, а закономерно. Чем лучше кэш-контроллер может «предсказать» обращения приложения к памяти, тем выше эффективность.

 

 

  1. Зачем нужен TLB (буфер ассоциативности трансляции).

 

Таблицы страниц хранятся в оперативной памяти из-за их больших размеров. Потенциально такое устройство оказывает колоссальное влияние на производительность. Однако большинство программ выполняет огромное количество обращений только к небольшому количеству страниц. Поэтому было принято решение оснастить компьютер небольшим аппаратным устройством, служащим для отображения виртуальных адресов на физические без обращения к таблице страниц - Translation Lookaside Buffer, TLB. Это устройство обычно находится внутри блока управления памятью и обрабатывает несколько записей. Каждая запись содержит информацию об одной странице, а именно: номер виртуальной страницы, бит изменения, код защиты (разрешения на чтение/запись/выполнение) и номер физического страничного блока, в котором расположена страница. Эти поля однозначно соответствуют полям в таблице страниц. Таким образом, если номер виртуальной страницы находится в TLB, блок управления памятью берет нужную информацию непосредственно из TLB, что значительно ускоряет работу. Если номера виртуальной страницы нет в TLB, блок управления памятью осуществляет обычный поиск в таблице страниц в оперативной памяти. Затем он удаляет одну из записей из буфера и заменяет ее только что найденной записью из таблицы страниц. Таким образом, если страница вскоре будет затребована снова, поиск окажется успешным.

 

 

  1. Процесс имеет класс приоритета Normal (8) и создает поток с относительным приоритетом AboveNormal (+1). Поток ожидает данные от жесткого диска. После получения данных система повышает приоритет потока. Определить приоритет потока при получении 3-го кванта после выхода из ожидания, если первых два поток использовал полностью.

 

Базовый приоритет потока – 9.

После получения данных приоритет потока 10-11.

После 1-го кванта времени – 9-10.

После 2-го кванта времени – 9 (т.к. текущий уровень приоритета не может быть ниже базового).

 


Поделиться с друзьями:

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.12 с.