
- •Для специальности
- •230105.51 (2203) Программное обеспечение вычислительной техники и автоматизированных систем
- •Рецензенты: о.В. Фаллер, преподаватель Колледжа МосГу;
- •Содержание
- •7.8. Организация программных комплексов 56
- •7.8. Организация программных комплексов 53
- •Пояснительная записка
- •1. Общие вопросы теории операционных систем
- •1.1. Классификация программного обеспечения
- •1.2. Запуск операционной системы
- •1.3. Координация действий при работе эвм
- •1.4. Понятие файловой системы
- •1.5. Схема отыскания кластеров файла на диске в файловой системе fat16
- •2. Командный язык для управления системой
- •2.1. Особенности командного языка
- •2.2. Организация пакетной обработки информации
- •2.2.1. Формальные параметры командных файлов
- •2.2.2. Дополнительные возможности пакетной обработки. Утилита be
- •3. Конфигурирование ядра ос на примере ms dos
- •3.1. Файл config.Sys
- •3.2. Управление распределением оперативной памяти в реальном режиме работы процессора
- •3.3. Файл автозагрузки autoexec.Bat
- •4. Типы программ
- •5. Системный сервис ms dos
- •6. Организация программных комплексов
- •6.1. Код возврата программы
- •6.2. Программный хвост
- •6.3. Окружение программы
- •6.4. Запуск одной программы из другой
- •6.5. Макрокоманды
- •Пример использования макрокоманды:
- •6.6. Создание процедур и передача параметров
- •6.7. Межсегментный вызов процедур
- •6.8. Модульный принцип построения программ
- •7. Ос Windows. Особенности работы
- •7.1. Работа с файловой системой. Ms Visual Basic ver 6.0
- •7.2. Api Интерфейс Windows на примере Visual Basic ver 6.0
- •7.3. Работа с буфером обмена
- •7.4. Работа со шрифтами
- •7.5. Работа с клавиатурой и мышью
- •7.6. Ole Технология
- •7.7. Работа с мультимедиа
- •7.8. Организация программных комплексов
- •7.9. Sdi и mdi программы
- •8. Разработка справочных систем для Windows 32x
- •8.1. Формат справки WinHelp
- •8.2. Подготовка справочного файла с помощью программы Windows Help Designer
- •8.3. Подключение справочной системы к программе
- •8.4. Разработка справочных систем в формате html
- •8.4.1. Создание тем справочной службы
- •8.4.2. Создание проекта справочной службы
- •8.4.3. Формирование оглавления
- •8.4.4. Задание поисковых индексов
- •8.5. Подключение справочных файлов к программам на Visual Basic
- •9. Общая архитектура операционных систем
- •9.1. Архитектура ос
- •9.2. Ядро и вспомогательные модули ос
- •9.3. Ядро в привилегированном режиме
- •9.4. Многослойная структура ос
- •9.5. Аппаратная зависимость и переносимость ос
- •9.6. Типовые средства аппаратной поддержки ос
- •9.7. Машинно-зависимые компоненты ос
- •9.8. Переносимость операционной системы
- •9.9. Концепция микроядерной архитектуры
- •9.10. Преимущества и недостатки микроядерной архитектуры
- •9.11. Совместимость и множественные прикладные среды
- •9.12. Двоичная совместимость и совместимость исходных текстов
- •9.13. Трансляция библиотек
- •9.14. Способы реализации прикладных программных сред
- •Приложение. Некоторые функции системного сервиса msdos. Прерывание 21h Организация ввода с клавиатуры
- •Организация вывода
- •Файлы и каталоги
- •Запуск одной программы из другой
- •Литература
- •Для специальности
- •230105.51 (2203) Программное обеспечение вычислительной техники
Пояснительная записка
Конспект лекций по дисциплине «Операционные системы и среды» соответствует требованиям государственного стандарта к уровню подготовки выпускников специальности 230105.51 (2203) Программное обеспечение вычислительной техники и автоматизированных систем.
В конспекте приводятся сведения об архитектуре современных операционных систем, рассматривается технология создания пакетных файлов, использование системного сервиса MS DOS для обслуживания файловой системы и организации программных комплексов. Также рассмотрены особенности операционной системы Windows32x: OLE технология, MCI интерфейс, API интерфейс. В конспекте приводятся сведения о форматах файловых систем Windows32х способах их разработки и программной загрузки.
В качестве инструментальных средств используется ассемблер реального режима работы микропроцессора Intel 8086 и язык программирования Visual Basic 6.0.
Следует отметить, что это издание не заменяет учебников по дисциплине Операционные системы и среды; предлагаемый конспект лекций должен помочь студентам ориентироваться в современных методах построения операционных систем и технологиях работы с файловыми системами и системным сервисом.
Цель предлагаемого конспекта лекций – представление в адаптированном для студентов СПО варианте основных методов и приемов разработки системного программного обеспечения с использованием языка ассемблера, командных файлов и системы визуального программирования Visual Basic ver. 6.0.
При этом особое внимание уделяется:
системным функциям прерывания 21h MS DOS;
функциям и визуальным компонентам Visual Basic ver. 6.0;
необходимым для разработки системного ПО для Windows 32x.
1. Общие вопросы теории операционных систем
1.1. Классификация программного обеспечения
Общая классификация программного обеспечения выделяет две составляющие «Системное программное обеспечение» и «Прикладное программное обеспечение».
Системное обеспечение подразделяется на утилиты и операционные системы.
Операционная система состоит из ядра и оболочки.
Оболочка – служит для организации взаимодействия с пользователем. Современные ОС решают эту задачу с помощью GUI (Graphical User Interface). Главная особенность такого интерфейса наличие графических окон и «инструментов» для быстрого доступа к функциям программ – пиктограмм.
Составные части ядра:
Программа управления файлами.
Драйвера – программы для взаимодействия с устройствами ПК.
Программа управления памятью.
Планировщик.
«Диспетчер» для управления процессом выполнения задания.
1.2. Запуск операционной системы
При включении питания процессор выполняет запуск специальной программы из ПЗУ, которая находится по определенному адресу. В ПК типа IBM PC загрузчик располагается в BIOS (Базовая система ввода вывода). Программа загрузки тестирует оборудование ПК пользуясь информацией которая хранится в CMOS ПЗУ памяти. Такая память питается от аккумуляторной батареи. Такая процедура загрузки и тестирования называется POST процедурой.
Рис.1.1. Состояние оперативной памяти перед загрузкой ОС.
1.3. Координация действий при работе эвм
Выполнение программы процессором – это сложный процесс. Для понимания сути которого требуется выделить следующие его особенности:
Программа – набор статических инструкций.
Деятельность – обработка программы. Процесс
Процесс характеризуется состоянием.
Состояние определятся:
Текущей позицией выполнения программы (значение адреса текущей команды).
Значениями регистров процессора.
Значениями ячеек оперативной памяти.
Рис.1.2. Оперативная память после загрузки ОС.
Фиксируется состояние в определенный момент времени. Современные процессоры реализуют межпроцессное взаимодействие.
Для отслеживания информации о процессах планировщик организует пул памяти – таблицу процессов, где фиксируется состояние процесса.
Состояния процесса характеризуется следующими фазами:
Готовность — его развитие может продолжаться.
Ожидание — его развитие приостанавливается.
Диспетчер отвечает за фактическое выполнение процессов. Современные ЭВМ – системы с разделением времени. Время процессора разбивается на кванты (около 50мсек). По истечении этого времени происходит переключение процессора на другой процесс. Переход на другой процесс инициируется прерыванием. Для предотвращения конфликтов используются семафоры.
Контроль осуществляется с помощью механизма флажков. Для управления флажком используется команда «test and set» (проверить и установить). Фазы контроля:
Считывания значение флажка.
Анализ полученного значения.
Механизм флажков позволяет предотвратить взаимную блокировку команд. Взаимная блокировка возможна если:
В системе имеет место конкуренция за использование неразделяемых ресурсов.
Ресурсы запрашиваются частями – процесс, уже получив некоторые ресурсы, продолжает запрашивать другие
Предоставленный ресурс не может быть отобран принудительно.
Пример один процесс получил доступ к принтеру, но ожидает доступ к жесткому диску ЭВМ, а другой получил доступ к жесткому диску но ждет доступа к принтеру.
Пример устранения подобных конфликтов может быть использован spooling при печати. Данные предварительно записываются на диск, а затем выводятся на принтере.