рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Определение операционной системы ОС. Назначение и основные функции ОС.

Определение операционной системы ОС. Назначение и основные функции ОС. - раздел Образование, 1. 1Определение Операционной Системы (Ос). Назначение И Основные Ф...

1. 1Определение операционной системы (ОС). Назначение и основные функции ОС.

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

Ресурсы - любой физический или логический компонент компьютера (это процессор, память, информация, жёсткий диск). Информация – файлы, библиотеки.

Функции ОС:

· Управление процессором (чередование выполнения программ)

· Управление памятью (выделение программам памяти)

· Управление устройствами (инициализация запросов на ввод-вывод), управление очередями, фиксация завершения обмена.

· Управление программами (инициализация программ и осуществление межпрограммных связей)

· Управление данными (файловые манипуляции)

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

Операционная система
    ЭВМ

Пользовательский

Пользователь
интерфейс

 

 

 


Системное и прикладное программное обеспечение
Программный

интерфейс

 

 

 


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

Программный интерфейс – набор услуг, освобождающий программиста от кодирования рутинных операций (API - Application Program Interface). Мы будем использовать WIN32API (в kernel32.dll). Он применяется в таких языках как Visual C++, Delphi, C, Visual Basic.

 

Эволюция ОС.

II. 1955-1965 г.г. Появление полупроводниковых элементов. Выполнение практических задач. Разделение персонала на программистов, операторов и т.д.… III. 1965-1980 г.г. Переход от полупроводников к ИС(интегральным схемам).… IV. 1980-2002 г.г. Появление СБИС(сверхбольшая интегральная схема). Удешевление тачек. Особенность: доступ к тачке…

Краткий обзор архитектуры Windows.

Процессы поддержки системы Процессы сервисов Юзерские приложения …   Пользовательский

Основные системные файлы Windows 95, NT, 2000.

hal.dll - уровень абстрагирования от оборудования win32k.sys - часть подсистемы win32, работающий в режиме ядра. kernel32.dll, user32.dll, gdi32.dll - основные dll системы win32.

Страничная или сегментно-страничная организация памяти.

1) С помощью сегментной организации из логического адреса формируется линейный. Начиная с Windows 95 используется плоская модель памяти FLAT.… смещение селектор :

В физическом адресном пространстве выбрана страница. Выбранная страница 1.

С помощью индекса байта определяется адрес требуемой ячейки памяти на выбранной странице. Пользователи работают только с линейными адресами.…   5. Алгоритмы замещения страниц виртуальной памяти.

Алгоритм NRU (Not Recently Used - не использовавшаяся в последнее время страница)

При обращении бит R выставляется в 1, через некоторое время ОС не переведет его в 0. M переводится в 0, только после записи на диск. Благодаря этим битам можно получить 4-ре класса страниц:

Алгоритм FIFO (первая прибыла - первая выгружена)

7.1.3 Алгоритм "вторая попытка" Подобен FIFO, но если R=1, то страница…  

Алгоритм LRU (Least Recently Used - использовавшаяся реже всего)

Второй метод: В таблице страниц добавляется запись - счетчик обращений к странице. Чем меньше значение счетчика, тем реже она использовалась. 7.1.6 Алгоритм "рабочий набор" Замещение страниц по запросу - когда страницы загружаются по требованию, а не заранее, т.е. процесс прерывается и ждет…

Регионы в адресном пространстве.

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

Передача физической памяти региону.

VirtualAlloc(..., Mem_Commit) - для выделения региона - это ключ. При передаче физ. памяти региону, не обязательно отводить её целому региону.… …  

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

СФ – страничный файл. Если данные в страничном файле есть. LIFO. LRU - менеджер виртуальной памяти отмечает и выгружается та страница, к которой наиболее длительное время не было…

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

  7. Атрибуты защиты страниц памяти в Win32. Изменение атрибутов защиты.

Атрибуты защиты страниц.

1) PAGE_NOACCESS. Попытка чтения, записи, исполнения в этом регионе памяти вызовет нарушение доступа. 2) PAGE_READONLY. Попытка записи, исполнения в этом регионе памяти вызовет… 3) PAGE_READWRITE. Попытка исполнения в этом регионе памяти вызовет нарушение доступа.

Стек потока под Windows 95, 98.

Особенностью в том, что размер стека составляет 1 Мб + 128 Кб. Структура:

64 Кб   СТЕК   64 Кб


 

 

Функции компилятора для контроля стека.

VOID SomeFunc(…) { int Values[4000];

КУЧИ (Heaps).

Каждая программа имеет следующую структуру.   /////////////// … свободная

Особенности кучи в Windows 95, Windows NT.

2. В Windows поддерживается несколько куч. 3. Кучи Win32 могут расти за пределы первоначально отведенного для них… Каждая куча Win32 поддерживает 4 отдельных списка свободных блоков, чтобы избежать чрезмерной фрагментации.

Структура кучи. Список(Заголовок и арена) кучи Win32.

  заголовок кучи  

Список свободных блоков

    Каждая структура списка свободных блоков имеет следующий формат.

Структура арены.

Арена в свободных блоках. SIZE – размер PREV – указатель на пустой свободный блок. NEXT – указатель на следующий свободный блок, то есть свободные… Функции управления кучей Win32. GetProcessHeap(…) – получить дескриптор кучи, предоставляемый процессу по умолчанию. Эта функция находит PDB и…

Удаление кучи.

Необходимо удалить весь список связанных подкуч. Windows поддерживает связанный список кучи, то есть HeapDestroy(…) должна выполнять действия по… Выделение блока памяти в определённой куче. HeapAlloc(…). Этот процесс состоит из следующих этапов.

Дополнительные кучи Win32 процесса.

1. для защиты компонентов кучи. 2. для более эффективного управления памятью. 3. для локализации доступа.

Создание дополнительных куч для эффективного управления памятью.

 

Локальный доступ.

Создание дополнительных куч для локализации доступа.

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

Файлы проецируемые в память (ФПВП).

Когда файл спроецирован в память к нему можно обращаться как к ячейкам памяти, не используя операции файлового ввода/вывода. Этот механизм… 1. Загрузки и исполнения ехе и dll файлов. Это позволяет экономить на размере… 2. Для доступа к файлу данных, размещённых на диске. Это позволяет обойтись без операций файлового ввода вывода и без…

Проецирование в память exe и dll файлов.

1. Отыскивается ехе файл, вызванный функцией. 2. Создаётся объект ядра процесс. 3. Создаётся адресное пространство нового процесса размером 4Гб.

Совместное использование статических данных несколькими экземплярами exe и dll модулей.

ехе файл виртуальная память ВАП раздел кода 3 страницы   раздел данных 2 страницы …  

Иерархия функций работы с памятью.

1. Функции управления памятью на уровне системных сервисов – 0 кольцо. В Windows 95, 98 это VMM.vxd, в Windows NT, 2000 – это ntoskrnl.exe. Эти… 2. VirtualXXX. Это функции управления виртуальной памятью, поддерживаемые… 3. Функции для работы с кучей. Функции Win32API, поддерживается kernel32, позволяют выделять в память из кучи…

Объекты kernel32.dll.

объект-процесс объект-поток объект-файл

Структура IMTE.

kernel32.dll pModuleTableArray user32.dll gdi32.dll my.exe

Структура MODREF.

Структура MODREF создаётся для exe файла и для каждой dll, используемой файлом. Память для каждой MODREF выделяется из кучи kernel32. Рассмотрим список MODREF для файла my.exe, который использует kernel32.dll и… PDB my.exe

Таблица дескрипторов.

Таблица дескрипторов содержит не только дескрипторы файлов, но и объектов ядра. Структу-ра таблицы дескрипторов:

Количество записей 4байта
Флаг 1 8 байт
Объект 1
 
Флаг N 8 байт
Объект N

Первые 4 байта определяют количество записей в таблице дескрипторов (30h). Если таблица заполнена, то Windows создаёт кучу, делая прибавление 10h и так далее, то есть для Windows ограничения в 255 дескрипторов не существует. После количества записей идёт массив 8 байтных структур. Каждая структура состоит из двух полей.

1 поле. Флаг управления доступом к объекту. Назначение флагов различно для различных типов объекта. Например объект – процесс. Флаг – процесс завершён. Следующее DWORD – указатель базы данных соответствующего объекта.

Переменная ядра, связанная с процессами.PsActiveProcessHead. Заголовок списка блоков PDB. CreateProcess(…) открывет ехе файл, который будет выполняться в процессе, то есть PDB. Создаёт первичный поток, то есть стек потока, контекст потока (содержимое всех регистров) и объект поток, то есть TDB.

 

 

15. Потоки. Состояния потоков. Свойства потоков. Объект ядра поток. Функции для работы с потоками.

Потоки отвечают за исполнение программного кода. При создании процесса всегда создаётся первичный поток. По желанию программиста создаются дополнительные потоки. CreateThread(…). Для чего создаются потоки?

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

Поток может находится в одном из 3-х состояний:

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

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

3. Заблокированное состояние. Поток ожидает некоторого события, например, ожидание завершения работы другого потока или какого-либо процесса. До наступление этого события планировщик не позволит этому процессу выполнится.

Объектами синхронизации являются потоки процессы, критические секции, семафоры, события, мьютексы.

Потоки владеют набором регистров.

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

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

Поток может завладеть или освободить синхронизирующими объектами процесса. Дескриптор потока – это индекс в таблице дескрипторов процесса. Идентификатор потока – это закодированный указатель на базу данных потока (PDB).

 

Основные функции для работы с потоками.

2) CreateRemoteThread(…).Создаёт новый поток в другом процессе. 3) ExitThread(…). Нормальное завершение потока. 4) TerminateThread(…). Аварийное завершение потока, завершение потока из другого потока.

Уровни приоритета.

Если при вызове процесса класс Normal, то система присваивает процессу класс Normal, если только родительский процесс не имел класс Idle. 1) Idle. Используется для системного потока, который обнуляет неиспользованные… 2) Normal. В основном все процессы работают с этим классом проиритета. Windows 95, 98 сама по-вышает уровень…

Функции Win32 связанные с планированием.

    17. Учет квантов времени в Windows. Управление величиной кванта.

Сценарий планирования.

2) Вытеснение потоков 3) Завершение кванта времени 4) Завершение потока

Поток простоя.

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

 

 

19. Динамическое повышение приоритета.

Динамическое повышение приоритета потока.

1. После завершения операций ввода/вывода. 2. По окончанию ожидания какого-либо события. 3. При пробуждении GUI потоков при выполнении операций с окнами.

Синхронизация.

В режиме ядра для синхронизации используются следующие объекты: события, семафоры, мьютексы. В Windows 2000 появился новый объект – ожидающий таймер. Cинхронизация может выполняться с помощью таких объектов ядра, как процессы, потоки, задания, файлы. Оповещение об…

Синхронизация потоков без использования объектов синхронизации.

поток 1 f:=false создание двух потоков f=true …   нет

Синхронизация потоков.

1) signaled – свободен 2) non-signaled – занят 2. Если состояние свободное, то работа потока разрешена, если в занятом, то… CreateMutex(…) (тот кто открывает, тот и закрывает, нет счётчика), CreateSemaphore(…) (есть счётчик),…

Критические секции.

Critical_Section cs1; Обычно состоит из следующих полей: счётчика блокировок, счётчика рекурсий,… С этими полями обычно работает ОС, пользователю там нечего делать. Для работы критической секции необходимо выполнить…

Работа потока с несколькими критическими секциями.

Critical_Section c1; Critical_Section c2; // поток 1

Синхронизация объектов.

WaitForSingleObject(…), WaitForMultipleObject(…). Синхронизация с использованием таких объектов ядра, как файл, процесс, поток, консольный ввод/вывод, оповещение об…

События со сбросом вручную.

Пример. Один поток считывает, другой эти данные обрабатывает. ResetEvent(…) – переводит в состояние non-signaled. SetEvent(…) – переводит в свободное состояние signaled.

События с автоматическим сбросом.

  WaitForMultipleObjects(…); .

События со сбросом вручную.

ResetEvent(…) – переводит в состояние non-signaled. SetEvent(…) – переводит в свободное состояние signaled. Поток перед считыванием с помощью функции ResetEvent(…) переводит в занятое состояние, считывает и освобождает с…

События с автоматическим сбросом.

WaitForMultipleObjects(…); . SetEvent(…); Для событий с автосбросом SetEvent(…) не используется.

Посылка асинхронных сообщений в очередь потока

BOOL PostMessage( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); При вызове этой функции система определяет, каким потоком создано окно, иден…  

Формат PE-файла.

Эта же фирма разработала новый формат для объектных (obj) и для библиотечных (lib) файлов. В ОС UNIX же использовался другой формат (VAX VMS).При разработке Windows NT в… РЕ-файлы явились усовершенствованием формата COFF. Этот формат назывался переносимым, потому что все реализации…

Особенности РЕ-формата.

2. Использование относительного виртуального адреса (RVA – Relation Virtual Address). Многие поля в РЕ используют RVA. Смещение данного элемента по… 3. Понятие раздела или секции. Все exe файлы Windows 95 используют плоскую…  

Заголовок РЕ-файла.

Несколько сотен байт РЕ-файлов заняты под заглушку (‘This program must be run under Windows’). В DOS MZ заголовке находится указатель RVA на… РЕ – Исполняемый Win32; NE – Исполняемый Win16; LE – Драйверы; LX –… В базе данных модуля содержатся следующие поля:

Пример (MS Visual C).

#pragma code_seg <имя>

#pragma data_seg <имя>

Если имя секции занимает 8 байт, то отсутствует завершающий нуль.

2. RVA, когда загрузчик должен отобразить секцию.

3. Размер секции, выровненный на ближайшую верхнюю границу размера файла. Файл делится на области, кратные 512 байт.

 

Основные секции исполняемого PE-файла.

В РЕ файле вызывается функция GetMessage(…) из модуля user32.dll (в ASM это функция call). Прикладная программа  

Импорт в PE-файлах.

  Программа в таблице импорта должна указать список внешнихdll и функций,… Name – имя внешней dll, причём имя указывается не в таблице, а указатель на RVA, содержащей имя внешней dll. Имя…

Экспорт в PE-файлах

  Из dll экспортируется 3 функции, причём 2 из них по имени. Рассмотрим… Характеристики – в нём указывается время и дата создания dll, в них находится RVA, который указывает на строку с…

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

1) Загрузчик просматривает строки, на которые указывает таблица имён функций, для того чтобы найти имя требуемой функции. Если имя найдено, определяется индекс в таблице имён функций.

2) По найденному индексу из таблицы номеров функций извлекается индекс в таблице адресов функций. Из таблицы адресов извлекается RVA требуемой функции.

 

 

Ресурсы РЕ-файла.

Организованы в виде иерархического дерева. Информация о ресурсах содержится в секции .rsrc. Организация ресурсов имеет следующую структуру.

 

Для каждого типа ресурса содержатся подкаталоги первого уровня, или структура data, которая содержит указатель на конкретное описание ресурса.

 

Базовые поправки РЕ-файла.

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

Особенности NTFS.

2. Защита от несанкционированного доступа, то есть каждый файл имеет дескриптор защиты, каждый пользователь при входе в систему регистрируется,… 3. Избыточность данных и отказоустойчивость. В Windows файловая система NTFS… 4. Сжатие данных.

Возможности NTFS.

myfile.dat: stream2 2. Имена в UNICODE. Это 16-разрядная кодировка символов. В FAT используется… 3. Универсальное средство индексирования. NTFS позволяет индексировать атрибуты файла. В настоящий момент…

Структура файловой системы NTFS.

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

Тома в NTFS.

На диске может быть один или несколько томов. NTFS обрабатывает каждый том независимо от других. Три примера конфигурации 150-мегабайтного жесткого…   Том состоит из набора файлов и свободного пространства, оставшегося в данном разделе диска. В FAT том также содержит…

Кластеры в NTFS.

Внутренне NTFS работает только с кластерами. (Однако NTFS инициирует низкоуровневые операции ввода-вывода на томе, выравнивая передаваемые дан­ные… NTFS адресуется к конкретным местам на диске, используя логические номе­ра…  

Главная таблица файлов.

В NTFS все данные, хранящиеся на томе, содержатся в файлах. Это относится и к структурам данных, используемым для поиска и выборки файлов, к начально­му загрузочному коду и битовой карте, в которой регистрируется состояние пространства всего тома (метаданные NTFS). Хранение всех видов данных в файлах позволяет файловой системе легко находить и поддерживать данные, а каждый файл может быть защищен дескриптором защиты. Кроме того, при по­явлении плохих секторов на диске, NTFS может переместить файлы метаданных.

Главная таблица файлов (MFT) занимает центральное место в структуре NTFS-тома. MFT реализована как массив записей о файлах. Размер каждой запи­си фиксирован и равен 1 Кб. Логически MFT содержит по одной строке на каждый файл тома, включая строку для самой MFT. Кроме MFT на каждом томе NTFS имеется набор файлов метаданных с информацией, необходимой для реализации структуры файловой си­стемы. Имена всех файлов метаданных NTFS начинаются со знака доллара ($), хотя эти знаки скрыты.

Метофайл

 

 

Назначение основных файлов NTFS.

Вторая запись указывает на файл в середине диска ($MftMirr), который называется зеркальной копией MFT и содержит копию первых нескольких строк MFT.… В процессе работы системы NTFS ведет запись в другой важный файл мета­данных -… Еще один элемент MFT зарезервирован для корневого каталога (также обо­значаемого как «»). Его запись содержит индекс…

HKEY_LOCAL_MACHINESystemCurrentControlSetControlFileSystem

  37. Структура главной файловой таблицы (MFT). Атрибуты файла NTFS. Заголовок…

Структура главной файловой таблицы (MFT).

Главная таблица файлов (MFT) занимает центральное место в структуре NTFS-тома. MFT реализована как массив записей о файлах. Размер каждой запи­си фиксирован и равен 1 Кб. Логически MFT содержит по одной строке на каждый файл тома, включая строку для самой MFT. Кроме MFT на каждом томе NTFS имеется набор файлов мета­данных с информацией, необходимой для реализации структуры файловой си­стемы. Имена всех файлов метаданных NTFS начинаются со знака доллара ($), хотя эти знаки скрыты. Так, имя файла MFT –– $Mft. Остальные файлы NTFS-тома являются обычными файлами и каталогами. Первая запись MFT, хранящая адреса других записей, называется базовой (base file record).

При первом обращении к тому NTFS должна смонтировать его, то есть считать с диска метаданные и сформировать внутренние структуры данных, необходи­мые для обработки обращений к файловой системе. Чтобы смонтировать том, NTFS ищет в загрузочном секторе физический адрес MFT на диске. Запись о са­мой MFT является первым элементом в этой таблице, вторая запись указывает на файл в середине диска ($MftMirr), который называется зеркальной копией MFT и содержит копию первых нескольких строк MFT. Если по каким-либо причинам считать часть MFT не удастся, для поиска файлов метаданных будет использована именно эта копия MFT.

 

Структура файловых ссылок.

 

Атрибуты файла NTFS

  Каждый атрибут файла хранится в файле как отдельный поток байтов. Строго… В таблице даны имена атрибутов, но на самом деле атрибуты соответ­ствуют числовым кодам типов, используемым NTFS для…

Резидентные атрибуты.

 

Нерезидентные атрибуты.

В большинстве случав, номер первого кластера тела нерезидентного атрибута равен нулю, а последний количеству кластеров занятых телом атрибута,… 16-разрядное поле, расположенное со смещением 20h от начала атрибутного…  

Структура каталогов в NTFS

Внутренняя структура каталога представляет собой бинарное дерево. Вот что это означает: для поиска файла с данным именем в линейном каталоге, таком,…   Вывод - для поиска одного файла среди 1000, например, FAT придется осуществить в среднем 500 сравнений (наиболее…

Структура больших файлов в NTFS

Большие файлы (large). Если данные файла не помещаются в одну запись MFT, то файл отражается в…  

Индексация файлов в NTFS.

  В случае больших каталогов списки файлов располагаются в отрезках. Атрибут…  

Битовая карта.

Хранение имён файлов в виде b+ дерева даёт следующие преимущества: 1. Поиск в каталоге выполняется быстрее. 2. Так как b+ дерево имеет тенденцию к росту в ширину, а не в глубину, то скорость поиска не уменьшается с ростом…

Восстанавливаемость NTFS.

1. Файловые системы с точной записью. 2. Файловые системы с отложенной записью или останавливающиеся файловые… Файловые системы с точной записью организованы таким образом, чтобы после сбоя были повреждены некритические участки…

Протоколирование транзакций.

Незавершенная операция с диском несет угрозу целостности файловой системы. Каким образом файловая система может реализовать свойство транзакций.… В файловых системах с кэшированием диска для восстановления системы после сбоя…  

Журнал транзакций.

Записи модификации. Большинство записей в журнале – это запись модификации. Каждая запись… 1. Информация для повтора, которая содержит сведения о том, как вновь применить к тому подоперацию полностью…

T1a.

Повтор. Выделить и инициализировать файловую запись в MFT.

Отмена. Освободить файловую запись в MFT.

T1b.

Повтор. Добавить имя файла в каталог.

Отмена. Удалить имя файла из каталога.

T1c.

Повтор. Установить биты 3-9 в битовой карте. Пометить кластеры как занятые.

Отмена. Очистить биты 3-9 в битовой карте. Пометить кластеры как свободные.

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

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

NTFS организована как реляционная база данных. Отмена транзакций проводится в обратном направлении. Если повторение идёт в прямом, то откат идёт в обратном направлении.

Информация для повтора и отмены может быть выражена либо физически, либо логически. Физическое описание задаёт модификацию тома как диапазон байт. Логическое описание представляет модификацию в терминах операций. Например, удалить файл a.dat. NTFS генерирует записи модификации для каждой из следующих транзакций: создание файла (каталога), удаление файла (каталога), расширение файла (каталога), урезание файла (каталога), остановка файловой информации, перенос, изменение прав доступа.

Записи контрольной точки.

Запись контрольной точки помогает NTFS определить, какая обработка необходима для тома после сбоя. Благодаря записи контрольной точки NTFS знает, как далеко ей надо пройти, чтобы начать восстановление.

 

После восстановления после сбоя NTFS считает журнал пустым.

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

Записи модификации.

3. Информация для повтора, которая содержит сведения о том, как вновь применить к тому подоперацию полностью запротоколированной подтверждённой… 4. Информация для отмены. Это сведения о том, как устранить изменения,… Рассмотрим записи модификации в журнале транзакций для операции создания файла.

T1a.

Повтор. Выделить и инициализировать файловую запись в MFT. Отмена. Освободить файловую запись в MFT.

T1b.

Повтор. Добавить имя файла в каталог. Отмена. Удалить имя файла из каталога.

T1c.

Повтор. Установить биты 3-9 в битовой карте. Пометить кластеры как занятые. Отмена. Очистить биты 3-9 в битовой карте. Пометить кластеры как свободные.

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

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

NTFS организована как реляционная база данных. Отмена транзакций проводится в обратном направлении. Если повторение идёт в прямом, то откат идёт в обратном направлении.

Информация для повтора и отмены может быть выражена либо физически, либо логически. Физическое описание задаёт модификацию тома как диапазон байт. Логическое описание представляет модификацию в терминах операций. Например, удалить файл a.dat. NTFS генерирует записи модификации для каждой из следующих транзакций: создание файла (каталога), удаление файла (каталога), расширение файла (каталога), урезание файла (каталога), остановка файловой информации, перенос, изменение прав доступа.

 

Записи контрольной точки.

Запись контрольной точки помогает NTFS определить, какая обработка необходима для тома после сбоя. Благодаря записи контрольной точки NTFS знает, как далеко ей надо пройти, чтобы начать восстановление.

 

 

Таблица транзакций.

Таблица транзакций(transaction table)— предназначена для отслеживания начатых, но еще не зафиксированных транзакций. B процессе восстановления результаты подопераций этих транзакций должны быть удалены с диска. Таблица транзакций содержит LSN незафиксированных (незавершенных) транзакций.

 

Таблица измененных страниц в журнале транзакций.

Таблица измененных страниц(dirty page table) — в нее записывается информация о том, какие страницы кэша содержат изменения структуры файловой системы, еще не записанные на диск. Эти данные в процессе восстановления должны быть сброшены на диск. Таблица измененных страницLSN записей, соответствующих модификациям кэша, не отраженным на диске. LSN самой старой записи, найденной NTFS в двух таблиц, определяет, откуда начнется проход повтора. Однако, если последняя запись контрольной точки окажется более ранней, NTFS начнет проход повтора именно с нее.

42. Восстановление данных в NTFS. Проход анализа. Проход повтора. Проход отмены.

Восстановление данных в NTFS.

1. Таблица транзакций. Предназначена для отслеживания транзакций, которые были начаты, но ещё не завершены. Подоперации этих транзакций при… 2. Таблица изменённых страниц. Содержит информацию о том, какие страницы кэша… Каждые 5 секунд NTFS помещает в журнал транзакций запись контрольной точки, непосредственно перед контрольной точкой…

Проход анализа.

Большинство записей модификации, расположенных в журнале после начала операции контрольной точки, представляет собой изменение либо таблицы… После того как таблицы в памяти приведены в актуальное состояние, NTFS…

Проход повтора.

Когда NTFS достигает конца журнала транзакций, она уже обновила кэш необходимыми модификациями тома, и подсистема отложенной записи, принадлежащая…  

Проход отмены.

  Транзакция 1 – Транзакция 2 – – – – – –

Переназначение плохих кластеров.

1. Зеркальные наборы. 2. Дуплексные наборы. 3. Чередование дисков с записью чётности.

Начальная загрузка.

На этом этапе файл Ntldr переводит процессор из реального режима в 32-разрядный режим линейной памяти, необходимый для выполнения любых дополнительных функций. Затем запускаются соответствующие драйверы системы minifile. Они встроены в Ntldr, поэтому этот файл способен находить и загружать Windows 2000 данные из разделов, отформатированных как с помощью FAT, так и NTFS.

Выбор операционной системы.

Поиск оборудования.

В компьютерах с процессором Intel поиск оборудования осуществляют файлы Ntdetect.com и Ntoskrnl.exe. Программа Ntdetect.comзапускается, если на этапе выбора ОС выбрана система Windows 2000 (или по окончании времени ожидания).

Выбор конфигурации.

3. Загрузка ядра. После выбора конфигурации загружается и инициализируется ядро Windows 2000… На этапе загрузки ядра Ntldr выполняет следующие действия:

Трансляция программы

TASM [ключи] имя_исходного_файла [,имя_объектного_файла]

[,имя_файла_листинга] [,имя_файла_перекрестных_ссылок]

Ключ /zi разрешает транслятору сохранить связь символических имен в программе с их смещениями в сегменте кода, что позволяет отладчику выполнять отладку, используя оригинальные имена.

 

Компоновка программы

[,имя_ресурсного_файла] Ключ /v указывает на необходимость сохранения отладочной информации в…  

Листинг Копирование строки

<2> masm <3>model small <4> .data

На рисунке приведен пример программы работы с ассемблерными вставками.

 

 

 

Ассемблерная вставка увеличивает на 2 исходное число.

Программный код для события OnClick кнопки «Ассемблерные вставки»имеет следующий вид:

procedure TForm1.Button1Click (Sender: TObject);

Var x:Integer;

begin

x:=StrToInt(Edit1.Text);

asm

mov ax,word ptr x

add ax,2

mov word ptr x,ax

end;

Edit2.Text:=IntToStr(x);

end;

 

55. Ассемблерные команды линейного и циклического сдвига. Пример программы.

Для преобразования числа в символьную форму используются команды сдвига. Все команды сдвига перемещают биты в поле операнда влево или вправо, в зависимости от кода операции. Все команды сдвига имеют одинаковую структуру: КОП операнд, счетчик_сдвигов.

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

статически — непосредственно во втором операнде;

динамически — в регистре CL перед выполнением команды сдвига.

Все команды сдвига устанавливают флаг переноса CF.

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

Команды линейного сдвига

Команды циклического сдвига

1. Очередной «выдвигаемый» бит устанавливает флаг CF. 2. Бит, появляющийся с другого конца операнда, имеет значение 0. 3. При сдвиге очередного бита он переходит во флаг CF, при этом значение преды­дущего сдвинутого бита теряется.

Команды простого циклического сдвига ;

Команды циклического сдвига через флаг переноса CF.

rol перанд, счетчик_сдвигов — циклический сдвиг влево (Rotate Left). Содержимое операнда сдвигается влево на количество битов, определяемое… ror операнд, счетчик_сдвигов — циклический сдвиг вправо (Rotate Right).… К командам циклического сдвига через флаг переноса CF относятся:

Перечень команд условного перехода для команды cmp

.data n equ 50 pole_m db n dup (?)

– Конец работы –

Используемые теги: определение, операционной, системы, ОС, назначение, основные, Функции, ОС0.123

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Определение операционной системы ОС. Назначение и основные функции ОС.

Что будем делать с полученным материалом:

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

Еще рефераты, курсовые, дипломные работы на эту тему:

Лекция 1. Тема: Операционная система. Определение. Уровни операционной системы. Функции операционных систем. 1. Понятие операционной системы
Понятие операционной системы... Причиной появления операционных систем была необходимость создания удобных в... Операционная система ОС это программное обеспечение которое реализует связь между прикладными программами и...

Введение в операционные системы. Определение, назначение, состав и функции операционных систем
Государственное образовательное учреждение высшего профессионального образования... ТОЛЬЯТТИНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СЕРВИСА...

Лекция: Уровни абстракции ОС. ОС с архитектурой микроядра. Виртуальные машины. Цели проектирования и разработки ОС. Генерация ОС В лекции рассматриваются следующие вопросы: методы проектирования и реализации ОС: уровни абстракции ОС; ОС с архитектурой мик
В лекции рассматриваются следующие вопросы методы проектирования и реализации... Содержание Введение Уровни абстракции ОС Операционные системы с микроядром Виртуальные машины другой распространенный подход к...

Экзаменационные вопросы к экзамену по дисциплине Операционные системы, среды и оболочки 1. Общие сведения и об операционных системах. Назначение и функции
Общие сведения и об операционных системах Назначение и функции... Операционная система ОС это упорядоченная последоват системных управляющих программ совместно с необходимыми...

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

Классификация ОС универсальные операционные системы и ОС специального назначения
По алгоритмам управления ресурсами... однозадачные ОС MS DOS предоставляет пользователю виртуальную машину... многозадачные Windows Unix поддерживают параллельное исполнение некоторых задач...

Системное программное обеспечение. Операционная система, назначение, состав и основные функции
Несмотря на это, пользователи, активно использующие вычислительную технику, зачастую испытывают затруднения при попытке дать определение… ОС как расширенная машина Использование большинства компьютеров на уровне… Даже если не входить в курс реальных проблем программирования ввода-вывода, ясно, что среди программистов нашлось бы…

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

Общие сведения об операционных системах и средах. Назначение и основные функции
Ответ... ОС комплекс управляющих и обрабатывающих программ которые с одной стороны... ОС позволяет Управление ресурсами согласовывает работу всех аппаратных средств...

Понятие Операционная система. Назначение. Основные характеристики и классификация
Понятие Операционная система Назначение Основные характеристики и классификация... Архитектура MS DOS Ядро системы Загрузка системы и дополнительных драйверов... Модель состояний процессов в UNIX SVR...

0.047
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам