
- •1. Основные понятия спо.
- •2. Функции ос
- •5. Ресурсы. Классификация ресурсов.
- •6. Понятие сетевых ос и распределенных ос. Функциональные компоненты сос.
- •7. Сетевые службы и сетевые сервисы.
- •8. Схемы построения сетей (одноранговые сети, сети с выделенными серверами, гибридные сети).
- •9. Трансляторы. Компиляторы. Интерпретаторы.
- •10.Этапы компиляции. Общая схема работы компилятора
1. Основные понятия спо.
Системное программное обеспечение - это программы и комплексы программ, являющиеся общими для всех, кто совместно использует технические средства компьютера, применяемые как для автоматизации, разработки новых программ, так и для организации выполнения программ существующих.
Системное программное обеспечение можно разделить на следующие группы: операционные системы; система управления файлами; интерфейсные оболочки; системы программирования; утилиты.
Операционная система - это комплекс управляющих и обрабатывающих программ, которые с одной стороны выступают как интерфейс между аппаратурой ПК и пользователем, а с другой стороны предназначены для наиболее эффективного использования ресурсов вычислительной техники и организации надежных вычислений. Любой комплект прикладного программного обеспечения работает под управлением операционной системы.
Система управления файлами - предназначены для организации более удобного доступа к данным, организованным как файлы. Благодаря системе управления файлами вместо низко-уровнего доступа с указанием конкретных физических адресов нужной записи используется логический доступ с указанием имени файла. Современные операционные системы имеют соответствующие системы управления файлами. Некоторые из них могут работать с несколькими системами управления файлами. Система управления файлами не существует сама по себе; она работает для конкретной операционной системы. Например, FAT-16 разработана для MS-DOS; FAT - Windows NT.
Интерфейсные оболочки - предназначены для расширения возможностей по управлению операционной системой.
Системы программирования - это комплекс программных средств, предназначенных для тестирования и отладки программного обеспечения.
Задачи системы программирования - это разработка операционных систем; систем ассемблирования; компиляторов; загрузчиков и программ связывания; макропроцессоров; драйверов.
Утилиты — это специальные системные программы, с помощью которых можно обслуживать саму операционную систему; подготовить для работы носителей данных; выполнить перекодировку данных; осуществить оптимизацию размещения данных на носителе и т.д. Утилиты могут работать только в соответствующей операционной системе.
2. Функции ос
1- прием от пользователя заданий или команд и их последующая обработка;
2- прием и исполнения программных запросов на запуск, приостановку и остановку других программ;
3- загрузка в оперативную память подлежащих исполнению программ;
4- инициация программы, т.е. передача ей управления, в результате чего процессор исполняет программу;
5- идентификация всех программ и данных;
6- обеспечение работы системы управления файлами и системы управления базами данных;
7 - обеспечение функций по организации и управлению всеми операциями ввода-вывода;
8 - распределение памяти и организация виртуальной памяти;
9 - планирование и диспетчеризация задач;
10 - организация механизмов обмена сообщениями и данных между программами;
11- защита одной программы от влияния другой;
12 - обеспечения сохранности данных;
13 - обеспечения работы систем программирования.
З.Архитектура ОС.
Наиболее общим переходом структуризации ОС является разделение её модулей на две группы: ядро, вспомогательные модули.
Ядро - это сердцевина ОС. Модули ядра выполняют базовые функции, решающие внутрисистемные задачи организации вычислительных процессов: переключение контекстов, обработка прерывания, управление вводом-выводом.
Вспомогательные модули - выполняются в виде библиотек процедур. К ним относятся:
- утилиты - программы, выполняющие отдельные задачи управления компьютерной системой;
- системные обрабатывающие программы - графические, текстовые редакторы, компиляторы, интерпретаторы, трансляторы, отладчики, компоновщики;
- программы, предоставляющие пользователю дополнительные услуги - блокнот, калькулятор, игры.
- библиотека процедур - библиотека математических функций.
Разделение ОС на ядро и вспомогательные модули осуществляют легкую расширяемость ОС. Вспомогательные модули являются транзитными, т.е. загружается в RAM только вовремя выполнения своих функций, что значительно экономит время и ресурсы. Для надежного управления кодов выполнения приложения ядро должно иметь определенные привилегии по отношению к приложению, иначе некорректное действие вспомогательных модулей может вмешаться в работу ОС и нарушить её.
Классификация вычислительных процессов.
Процесс - это система действий, реализующая определенную функцию в вычислительной системе и оформленная так, что управляющая программа вычислительной, системы может перераспределять ресурсы этой системы в целях обеспечения мультипрограммирования.
1)B зависимости от интервала существования процессы бывают:
Процессы реального времени - такой вид процессов, требующих такого планирования, при котором гарантировалось бы окончание процесса до наступления некоторого конкретного момента времени.
Интерактивные процессы - процессы, время существования которых должно быть не более интервала времени допустимой реакции ЭВМ на запросы пользователя.
Пакетные — все остальные процессы.
2) По генеалогическому признаку процессы делятся на:
Порождающие - вид процессов, задающий требование для порождения других процессов.
Порожденные - процессы, создаваемые по требованию других процессов.
3) По результативности процессы бывают:
Эквивалентные - процессы, имеющие одинаковый конечный результат обработки одних и тех же исходных данных по одной и той же или даже различным программам на одном и том же или на различных процессорах.
Тождественные - эквивалентные процессы, обработка данных происходит по одной и той же программе, но трассы которых не совпадают.
Равные - тождественные процессы, трассы которых совпадают.
Различные - все остальные процессы.
4) По динамическому признаку:
Последовательные - процессы, интервалы которых не пересекаются во времени.
Параллельные - процессы, существующие одновременно на, рассматриваемом интервале времени.
Комбинированные - процессы, существующие на рассматриваемом интервале хотя бы в одной точке, но не существующие в другой и существующие одновременно в некоторой одной
точке. 5) По принадлежности к центральному процессору процессы:
Внутренние (программные) - развивающиеся на центральном процессоре.
Внешние - процессы, развитие которых происходит под контролем или управлением операционной системы на процессорах, отличных от центрального.
6) По принадлежности к операционной системы процессы:
Системные - процессы, при развитии которых исполняется программа из состава операционной системы.
Пользовательские - процессы, при развитии которых исполняется пользовательская (прикладная) программа.
7) По связанности процессы бывают:
Взаимосвязанными - процессы, между которыми с помощью системы управления процессами поддерживаются связи какого-либо рода: функциональные, пространственно-временные, управляющие, информационные.
Изолированные - процессы со слабыми связями. Информационно-независимые - взаимосвязанные процессы, при развитии которые используют совместно некоторые ресурсы, но информационно не связаны между собой. Связь между такими процессами может быть либо функциональная, либо пространственно-временная.
Взаимодействующие - процессы, имеющие информационные связи.
Конкурирующие - взаимосвязанные процессы, имеющие связи по ресурсам (способ связи явный - с помощью явного обмена сообщениями между процессами, или неявный - с помощью разделяемых структур данных).