- •1. Поняття ос, її призначення та функції.
- •1. Понятие операционной системы. Назначение, состав и функции операционных систем.
- •2. Історія розвитку ос. Класифікація сучасних ос.
- •3. Основные принципы построения ос.
- •4. Операционные оболочки.
- •5. Драйверы и утилиты.
- •6. Процессы. Определение процесса. Классификация процессов ос.
- •4. Функциональные компоненты ос. Общая характеристика
- •7. Ресурсы. Определение ресурса. Классификация ресурсов ос.
- •3. Функціональні компоненти ос.
- •5. Требования к современным ос
- •4. Ядро ос. Привілейований режим і режим користувача. Системний виклик.
- •Рхитектура ос
- •Ядро и вспомогательные модули ос
- •Ядро в привилегированном режиме
- •Микроядерная архитектура
- •Тенденции в структурном построении ос
- •Монолитные системы
- •Многоуровневые системы
- •6. Ос та її оточення. Взаємодія ос і апаратного забезпечення. Засоби апаратної підтримки ос
- •Взаимодействие с аппаратным обеспечением
- •По сфере применения[править | править вики-текст]
- •Содержание
- •Описание и использование интерфейсов[править | править вики-текст]
- •Интерфейсы и абстрактные классы[править | править вики-текст]
- •Множественное наследование и реализация интерфейсов[править | править вики-текст]
- •8. Особливості архітектури Windows. Компоненти режиму ядра. Компоненти режиму користувача. Архитектура Windows nt
- •Режим пользователя[править | править вики-текст]
- •Режим ядра[править | править вики-текст]
- •9. Процеси і потоки в сучасних ос. Складові елементи процесів і потоків. Багатопотоковість. Стани процесів і потоків. Поток выполнения
- •Отличие от процессов[править | править вики-текст]
- •Многопоточность[править | править вики-текст]
- •10. Інтерфейс Windows api. Версії Windows api. Категорії функцій Windows api.
- •Содержание
- •Общие сведения[править | править вики-текст]
- •Содержание
- •Api как средство интеграции приложений[править | править вики-текст]
- •Сигнатура функции[править | править вики-текст]
- •Семантика функции[править | править вики-текст]
- •Api операционных систем. Проблемы, связанные с многообразием api[править | править вики-текст]
- •Структура security_attributes
- •Возвращаемые значения
- •Замечания
- •Содержание
- •Общие сведения[править | править вики-текст]
- •Секреты многопоточности: изучаем модульное тестирование в сфере мобильного программинга
- •Объект ядра Событие
- •Объект ядра Мьютекс
- •Пример работы Mutex
- •Объект ядра Семафор (semaphore)
- •Критические секции
- •Атомарные операции
- •Заключение
- •15. Потоки. Функція CreateThread. Завершення потоку. Зміна класу пріоритету процесу. Установка відносного пріоритету потоку.
- •17. Робота з файлами, каталогами і дисками в Win32. Отримання інформації про диски, вільний простір.
- •18. Функція CreateFile та її параметри. Функция CreateFile
- •Коммуникационные ресурсы
- •19. Функції Windows api для пошуку файлів. Применение функций Windows api
- •Функции LoadKeyboardLayout и UnloadKeyboardLayout
- •Функция GetLocalTime
- •Функция GetTickCount
- •Функция GlobalMemoryStatus
- •Функция Sleep
- •Функции для работы с guid
- •Функция ShellExecute
- •Функция shFileOperation
- •20. Функції Windows api для читання даних з файлу та запису в файл. Синхронні і асинхронні операції з файлами. Функции api для работы с консолью
- •Использование русского языка в консоли с помощью api
- •Чтение/запись данных в консоль/файл
- •Установка заголовка окна консоли
- •Установка цвета символов и фона в консоли
- •Установка позиции курсора
2. Історія розвитку ос. Класифікація сучасних ос.
История развития ОС. Разновидности ОС.
Первое поколение (1945-1955): электронные лампы и коммутационные панели.
На первых машинах использовались механические реле, но они были очень медлительны, длительность такта составляла несколько секунд. Позже реле заменили электронными лампами. Машины получались громоздкими, занимающими целые комнаты, с десятками тысяч электронных ламп, но все равно они были в миллионы раз медленнее, чем даже самый дешевый современный персональный компьютер.
К началу 50-х, с выпуском перфокарт, установившееся положение несколько улучшилось. Стало возможно вместо использования коммутационных панелей записывать программы на карты и считывать их с карт, но во всем остальном процедура вычислений оставалась прежней.
Второе поколение (1955-1965): транзисторы и системы пакетной обработки.
В середине 50-х изобретение и применение транзисторов радикально изменило всю картину. Компьютеры стали достаточно надежными, машины с высокой вероятностью могли работать довольно долго, выполняя при этом полезные функции. Впервые сложилось четкое разделение между проектировщиками, сборщиками, операторами, программистами и обслуживающим персоналом.
Машины, теперь называемые мэйнфреймами, располагались в специальных комнатах с кондиционированным воздухом, где ими управлял целый штат профессиональных операторов. Большие компьютеры второго поколения использовались главным образом для научных и технических вычислений, таких как решение дифференциальных уравнений в частных производных, часто встречающихся в физике и инженерных расчетах. В основном на них программировали на языке FORTRAN и ассемблере, а типичными операционными системами были FMS (Fortran Monitor System) и IBSYS (операционная система, созданная корпорацией IBM для компьютера IBM 7094).
Третье поколение (1965-1980): интегральные схемы и многозадачность.
К началу 60-х годов большинство производителей выпускало две полностью несовместимые линейки компьютеров. С одной стороны, существовали большие компьютеры с пословной обработкой текста типа IBM 7094, использовавшиеся для числовых вычислений в науке и технике. С другой стороны, выпускались коммерческие компьютеры с посимвольной обработкой, такие как IBM 1401, широко применявшиеся в банках и страховых компаниях для сортировки и печати данных.
Корпорация IBM выпустила линейку машин IBM/360. Это была серия программно совместимых машин, начиная от компьютеров размером с IBM 1401 и заканчивая машинами, значительно более мощными, чем IBM 7094. Они различались только ценой и производительностью. Так как все машины имели одинаковую архитектуру и набор команд, программы, написанные для одного компьютера, могли работать на всех других. Самым важным достижением явилась многозадачность.
Четвертое поколение (с 1980 года по наши дни): персональные компьютеры.
Следующий период эволюции операционных систем связан с появлением больших интегральных схем — кремниевых микросхем, содержащих тысячи транзисторов на одном квадратном сантиметре. Это поколение стало поколением персональных компьютеров на базе микропроцессоров. По архитектуре персональные компьютеры (первоначально называемые микрокомпьютерами) были во многом похожи на мини-компьютеры но, конечно, отличались по цене. Было создано несколько семейств микрокомпьютеров. В 1974 году фирма Intel представила первый 8-разрядный микропроцессор общего назначения 8080. Следующее поколение микропроцессоров было 16-разрядным. Компания Microsoft предложила IBM пакет, включавший собственный интерпретатор BASIC и операционную систему DOS (дисковая операционная система). Операционные системы СР/М, MS-DOS и APPLE DOS имели интерфейс командной строки, с помощью которого пользователи вводили команды с клавиатуры. Компания Microsoft разработала операционную систему Windows. Изначально Windows представляла собой лишь графическую среду, работающую поверх 16-разрядной ОС MS-DOS; другими словами, она являлась скорее оболочкой, нежели настоящей операционной системой. Что же касается текущих версий Windows, это — потомки ОС Windows NT, написанной «с нуля».
Другой значимый претендент на лидерство в мире персональных компьютеров — операционная система UNIX и различные ее ответвления. С середины 80-х годов начали расти и развиваться сети персональных компьютеров, управляемых сетевыми и распределенными операционными системами.
Операционные системы могут различаться:
· особенностями реализации внутренних алгоритмов управления основными ресурсами компьютера (процессорами, памятью, устройствами);
· типами аппаратных платформ;
· областями использования;
· особенностями методов построения;
· сетевыми функциями и многими другими свойствами.
Особенности алгоритмов управления ресурсами. В зависимости от особенностей использованного алгоритма управления процессором, операционные системы делят на: многозадачные и однозадачные; многопользовательские и однопользовательские; системы, поддерживающие многонитевую обработку и не поддерживающие ее; многопроцессорные и однопроцессорные системы.
Типами аппаратных платформ. По типу аппаратуры различают операционные системы персональных компьютеров, мини-компьютеров, мейнфреймов, кластеров и компьютерных сетей. Среди перечисленных типов компьютеров могут встречаться как однопроцессорные варианты, так и многопроцессорные. В любом случае специфика аппаратных средств, как правило, отражается на специфике операционных систем. Очевидно, что операционная система большой машины является более сложной и функциональной, чем операционная система персонального компьютера.
Наряду с операционными системами, ориентированными на совершенно определенный тип аппаратной платформы, существуют операционные системы, специально разработанные таким образом, чтобы они могли быть легко перенесены с компьютера одного типа на компьютер другого типа, так называемые мобильные или многоплатформенные ОС. Наиболее ярким примером такой ОС является популярная система UNIX. В этих системах аппаратно-зависимые места тщательно локализованы, так что при переносе системы на новую платформу переписываются только они. Средством, облегчающим перенос остальной части ОС, является написание ее на машинно-независимом языке, например, на С, который и был разработан для программирования операционных систем.
Особенности областей использования. Многозадачные операционные системы подразделяются на три типа в соответствии с использованными при их разработке критериями эффективности:
· системы пакетной обработки (например, ЕС);
· системы разделения времени (UNIX, VMS);
· системы реального времени (QNX, RT/11).
Системы пакетной обработки предназначались для решения задач в основном вычислительного характера, не требующих быстрого получения результатов. Главной целью и критерием эффективности систем пакетной обработки является максимальная пропускная способность, то есть решение максимального числа задач в единицу времени.
Системы разделения времени призваны исправить основной недостаток систем пакетной обработки - изоляцию пользователя от процесса выполнения его задач.
Системы реального времени применяются для управления различными техническими объектами, такими, например, как станок, спутник, научная экспериментальная установка, или технологическими процессами, такими, как гальваническая линия, доменный процесс и т.п.
Особенности методов построения. При описании операционной системы часто указываются особенности ее структурной организации и основные концепции, положенные в ее основу. К таким базовым концепциям относятся:
· способы построения ядра системы;
· использование объектно-ориентированного подхода;
· поддержка нескольких прикладных сред;
· распределенная организация.
Сетевые операционные системы. Сетевая операционная система составляет основу любой вычислительной сети. Каждый компьютер в сети в значительной степени автономен, поэтому под сетевой операционной системой в широком смысле понимается совокупность операционных систем отдельных компьютеров, взаимодействующих с целью обмена сообщениями и разделения ресурсов по единым правилам - протоколам. В узком смысле сетевая ОС - это ОС отдельного компьютера, обеспечивающая ему возможность работать в сети.
Особенности ОС Windows
· оконный графический интерфейс. Окно - это основное поле действия программы;
· многозадачность система обеспечивает работу с нескольким задачами одновременно с возможным переключением между ними;
· возможность использования длинных имен файлов и каталогов — до 256 символов;
· удобная и гибкая справочная система;
· стандартные система меню, форма представления отчетов, операции обработки для сервисных и прикладных программ;
· устойчивость в работе, защищенность программы и информации;
· полная независимость от аппаратуры и др.
