- •Системное программное обеспечение
- •Основные понятия теории операционных систем
- •Прерывания
- •Классификация операционных систем
- •Архитектура аппаратных и программных средств персонального компьютера
- •Регистры микропроцессоров Intel 8086/88
- •Формирование физического адреса
- •Прерывания
- •Особенности архитектуры микропроцессоров i80x86
- •Реальный и защищенный режимы работы процессора
- •Новые системные регистры микропроцессоров i80х86
- •Адресация в 32-разрядных микропроцессорах i80х86 при работе в защищенном режиме
- •Система прерываний 32-разрядных микропроцессоров i80х86
- •Управление задачами в операционных системах
- •Планирование процессов и диспетчеризация задач
- •Стратегии планирования (диспетчеризации)
- •Дисциплины диспетчеризации
- •Диспетчеризация задач с использованием динамических приоритетов
- •Управление памятью в операционных системах
- •Память и отображение, виртуальное адресное пространство
- •Простое непрерывное распределение и распределение с перекрытием
- •Распределение статическими и динамическими разделами
- •Разрывные методы распределения памяти
- •Распределение оперативной памяти в современных ос для пк
- •Управление вводом/выводом в операционных системах
- •Основные системные таблицы ввода-вывода
- •Файловая система
- •Структура магнитного диска
- •Файловая система fat
- •Файловая система ntfs
- •Структура тома с файловой системой ntfs
- •Основные отличия fat от ntfs
- •Управление параллельными взаимодействующими вычислительными процессами
- •Использование блокировки памяти при синхронизации параллельных процессов.
- •Синхронизация процессов посредством операции «проверка и установка»
- •Семафорные примитивы Дейкстры
- •Мониторы Хоара
- •Почтовые ящики
- •Конвейеры (программные каналы)
- •Очереди сообщений
- •Проблема тупиков и методы борьбы с ними
- •Предотвращение тупиков
- •Обход тупиков
- •Распознавание тупика
- •Современные операционные системы
- •Семейство операционных систем unix
- •Основные понятия системы unix
- •Функционирование системы unix
- •Файловая система
- •Межпроцессорные коммуникации
Основные отличия fat от ntfs
-
FAT более компактна и менее сложна;
-
Система NTFS не может использоваться для форматирования флоппи-дисков. Не стоит ей пользоваться для форматирования разделов объемом менее 50-100 Мбайт;
-
Разделы FAT имеют объем до 2 Гбайт, разделы NTFS – до 16 Эбайт (264 байт, это приблизительно 16 000 млрд Гбайт). В настоящее время размер файлов ограничивается 2 Тбайт – 240 байт:
-
Разделы FAT могут использоваться практически во всех ОС, с разделами NTFS напрямую можно работать только из Windows NT;
-
Разделы NTFS обеспечивают локальную безопасность как файлов, так и каталогов. Разделы FAT устанавливают лишь общие права, связанные с общим доступом к каталогам в сети;
-
Windows NT содержит утилиту CONVERT.EXE, которая может преобразовать тома FAT в эквивалентные тома NTFS. Однако для обратного преобразования утилит нет.
Управление параллельными взаимодействующими вычислительными процессами
Основной особенностью мультипрограммных ОС является то, что в их среде параллельно развивается несколько вычислительных процессов. Параллельными называют последовательные вычислительные процессы, которые одновременно находятся в каком-либо активном состоянии. Два параллельных процесса могут быть независимыми либо взаимодействующими.
Независимыми являются процессы, множества переменных которых не пересекаются. Под переменными в этом случае понимают файлы данных, а также области оперативной памяти, сопоставленные определенным в программе (и промежуточным) переменным. Независимые процессы не влияют на работу друг друга. Они могут только быть причиной задержек исполнения других процессов, так как вынуждены разделять ресурсы системы.
Взаимодействующие процессы совместно используют общие переменные, и выполнение одного процесса может повлиять на выполнение другого.
Взаимодействовать могут либо конкурирующие процессы, либо процессы, совместно выполняющие общую работу.
Процессы, выполняющие общую совместную работу таким образом, что результаты вычислений одного процесса в явном виде передаются другому (обмен данными), называются сотрудничающими.
Чтобы предотвратить некорректное исполнение конкурирующих процессов вследствие нерегламентированного доступа к разделяемым (общим) переменным, необходимо ввести механизм взаимного исключения, который не позволит двум процессам одновременно обращаться к разделяемым переменным. Такие общие переменные называют критическими ресурсами.
Кроме этого, в ОС должны быть предусмотрены средства, синхронизирующие работу взаимодействующих процессов. Другими словами, процессы должны обращаться к неким средствам не только ради синхронизации с целью взаимного исключения, но и чтобы обмениваться данными.
Те места в программах, где происходит обращение к критически ресурсам, называются критическими секциями или критическими интервалами. Необходима организация такого доступа к критическому ресурсу, когда только одному процессу разрешается входить в критическую секцию.
Обеспечение взаимоисключения является одной из ключевых проблем параллельного программирования. Было предложено несколько способов решения этой проблемы – программные и аппаратные.