- •Классификация и характеристика программного обеспечения
- •Назначение, классификация системного программного обеспечения. Требования к спо
- •Формирование целостного представления о назначения организации сис по.
- •Овладение методами и инструментами: настройки, откладки, диагностики и защиты программных систем.
- •Назначение, функции и основные качества операционных систем. Требования к современным ос
- •Поколения операционных систем и их классификация
- •Функциональные компоненты операционных систем: подсистема управления ресурсами
- •1.1. Управление процессами
- •1.2. Управление памятью
- •1.3. Управление файлами и внешними устройствами
- •Функциональные компоненты операционных систем: подсистема управления задачами
- •2.1. Защита данных и администрирование
- •2.2. Интерфейс прикладного программирования
- •2.3. Пользовательский интерфейс
- •Архитектура операционных систем: ядро и вспомогательные модули ос
- •Модулями ос
- •Архитектура операционных систем: ядро в привилегированном режиме
- •В привилегированном режиме
- •К привилегированному ядру
- •Архитектура операционных систем: многослойная структура ос
- •Типовые средства аппаратной поддержки операционных систем
- •Концепция, преимущества и недостатки микроядерной архитектуры
- •Пространство
- •Мультипрограммирование. Реализация в системах пакетной обработки
- •Ввода-вывода
- •В мультипрограммной системе (б)
- •Мультипроцессорная обработка: сущность и характеристика
- •Понятия «процесс» и «поток», операции над процессами в мультипрограммных системах
- •Планирование и диспетчеризация потоков в мультипрограммных системах
- •Состояния потока в мультипрограммных системах
- •Вытесняющие и невытесняющие алгоритмы планирования
- •Алгоритмы планирования, основанные на квантовании
- •Алгоритмы планирования, основанные на приоритетах
- •Синхронизация процессов и потоков: цели и средства синхронизации
- •Синхронизация процессов и потоков: гонки и тупики
- •Синхронизация процессов и потоков: критическая секция, блокирующие
- •Синхронизация процессов и потоков: использование семафоров
- •Синхронизация процессов и потоков: синхронизирующие объекты ос
- •Функции операционных систем по управлению памятью
- •Управление памятью: виртуальное адресное пространство и виртуальная память
- •Алгоритмы распределения памяти: распределение памяти фиксированными разделами
- •Алгоритмы распределения памяти: распределение памяти динамическими разделами, перемещаемые разделы
- •Управление памятью: страничное распределение
- •Управление памятью: сегментное распределение
- •Управление памятью: сегментно-страничное распределение
- •Мультипрограммирование на основе прерываний: диспетчеризация и приоритезация прерываний в ос
- •Мультипрограммирование на основе прерываний: системные вызовы
- •Управление вводом-выводом в операционной системе: основные понятия и концепции организации ввода/вывода
- •Режимы управления вводом/выводом. Основные системные таблицы ввода/вывода
- •2.1. Режимы управления вводом/выводом
- •2.2. Основные системные таблицы ввода-вывода
- •Управление вводом-выводом в операционной системе: кэширование операций ввода/вывода при работе с накопителями на магнитных дисках
- •Управление файлами: общий принцип работы операционной системы с файлами
- •Управление файлами: общая характеристика файловых систем (fat, fat32 и ntfs)
- •2.1. Файловая система fat
- •2.2. Файловые системы vfat и fat32
- •3. Файловая система ntfs
- •3.1. Структура тома с файловой системой ntfs
- •3.2. Возможности файловой системы ntfs по ограничению
- •Сетевые и распределенные операционные системы
- •Функциональные компоненты сетевой операционной системы
- •Одноранговые и серверные сетевые операционные системы
- •Интерфейс прикладного программирования (api)
- •1.1. Принципы построения интерфейсов ос
- •1.2. Варианты реализации функций api
- •1). Реализация функций api на уровне ос
- •2). Реализация функций api на уровне системы программирования
- •3). Реализация функций api с помощью внешних библиотек
- •Платформенно-независимый интерфейс posix
- •Технологии программирования сом
Классификация и характеристика программного обеспечения
Общая характеристика дисциплины
Целью дисциплины является – изучение общих принципов организации ОС и базового множества системного ПО.
Задачи дисциплины:
Формирование целостного представления о назначения организации сис ПО.
Овладение методами и инструментами: настройки, откладки, диагностики и защиты программных систем.
Общие понятия ПО
В архитектуре современных ЭВМ ПО является наиболее гибкой его компонентом, обеспечивающий функционирование аппаратные компоненты в различных режимах и обеспечивая развитый интерфейс с пользователем в процессе подготовки, откладки и решения задач.
ПО – это совокупность программных средств для ЭВМ и их систем любого класса и типа, обеспечивающих функционирование, диагностику и тестирование их аппаратных средств, а также разработку, откладку и выполнение любых задач пользователя с соответствующим документированием, где в качестве пользователя может выступать как человек так и любое периферийное устройство (ПУ), подключенное к ЭВМ и нуждающийся в ее вычислительных ресурсах.
Этапы развития ПО:
Программирование для ЭВМ первого поколения. Программирование велось в машинных кодах, т.е. для каждой машины была своя система команд, свой микрокоп, своя адресация и т.д. В этом случае пользователь получал в свое распоряжение все ресурсы машины напрямую.
Появилась возможность использовать отдельные перфокарты для решения общих частей разных задач. Однако с точки зрения пользователей положение дел не изменилось это узкий круг программистов, программирующих в машинных кодах.
Характерно для ЭВМ второго поколения. Появились первые прообразы ОС, которые назывались мониторами. Этот этап характерен выделением языков программирования, в частности ассемблер.
1960г. появление первых ОС для больших машин. С помощью этих ОС успешно решились вопросы прерываний, защиты основной памяти от несанкционированного доступа, появились языки высокого уровня. Что позволило существенно расщирить круг задач и круг пользователей.
Связан с появлением ЭВМ четвертого поколения, данные машины вместе с современными ОС обеспечивают многорежимную работу вычислительных систем. Позволяют обеспечить доступ к вычислительным ресурсам массового пользования, прежде чего за счет доступного и интуитивно-понятного интерфейса. Этап характеризуется появлением мощных систем программирования, основанных на современных технологиях программирования. Этот характеризуется переходом от локального ПО к сетевому.
Классификация ПО
Традиционно классификацию ПО сводят к трем классам программных средств. Данное деление является достаточно условным, т.к. с развитием ИТ многие программы мигрируют из одной группы в другую.
Рисунок 1.
Рис. 1. Классификация ПО
Прикладные программы предназначены для решения функциональных задач и производят обработку информации в различных предметных областей.
Инструментальное ПО предназначено для создания новых оригинальных программных средств в любой проблемной области.
Системное ПО – совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ. Сис ПО управляет ресурсами компьютерной системы, ее состав мало зависит от характера решаемых задач пользователей.
Сис ПО предназначено:
Для создания операционной среды функционирования других программ
Автоматизация разработки и создание новых программ
Обеспечение надежной и эффективной работы компьютера и вычислительной сети
Проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей
Выполнение вспомогательных технологических процессов (копирование, восстановление и т.д.)
Сис ПО как правило ориентирована на квалифицированных пользователей – системный программист, администратор сети, прикладной программист и оператор.
Классификация системного ПО:
В сис ПО традиционно включают две группы программ:
Системно-управляющие программы. Организует корректное функционирование всех устройств систем, т.е. обеспечивают управление вычислительными процессами и вычислительными комплексами и обеспечивают работу с внутренними данными операционных систем.
Системно-обрабатывающие программы. Выполняются специально-прикладные программы или приложения.
Наиболее распространенная и общепринятая классификация сис ПО, в этом случае сис ПО компьютера делят на:
Базовая ПО – минимальный набор программных средств, обеспечивающих работу компьютера. Входят в базовую ПО: ОС и драйверы ОС; интерфейсные оболочки для взаимодействия пользователя с ОС и программные среды; система управления файлами.
Сервисная ПО – программы и программные комплексы, которые расширяют возможности базового ПО и организуют более удобную среду работы пользователя. Входят в состав сервисного ПО: драйверы специфических и специальных устройств; программы диагностики работоспособности компьютера; антивирусные средства; программы обслуживания дисков; программы архивирования данных; программы обслуживания сети и другие.