
- •1. Основные понятия спо.
- •2. Функции ос
- •5. Ресурсы. Классификация ресурсов.
- •6. Понятие сетевых ос и распределенных ос Функциональные компоненты сос.
- •7. Сетевые службы и сетевые сервисы, щ
- •8. Схемы построения сетей (одноранговые сети, сети с выделенными серверами, гибридные сети).
- •9. Трансляторы. Компиляторы. Интерпретаторы. J
- •10. Этапы компиляции. Общая схема работы компилятора.
СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ I
1. Основные понятия спо.
Системное программное обеспечение — это программы и комплексы программ, являющиеся общими для всех, кто совместно использует технические средства компьютера, применяемые как для автоматизации, разработки новых программ, так и для организации выполнения программ существующих.
Системное программное обеспечение можно разделить на следующие группы: операционные системы; система управления файлами; интерфейсные оболочки; системы программирования; утилиты.
Операционная система - это комплекс управляющих и обра-ч батывающих программ, которые с одной стороны выступаю! как интерфейс между аппаратурой ПК и пользователем, а с дру\ гой стороны предназначены для наиболее эффективного исполы зования ресурсов вычислительной техники и организации нан дежных вычислений. Любой комплект прикладного программ^ ного обеспечения работает под управлением операционной сие* темы. IСистема управления файлами - предназначены для органи-шции более удобного доступа к данным, организованным как фийлы. Благодаря системе управления файлами вместо низко-уроннего доступа с указанием конкретных физических адресов нужной записи используется логический доступ с указанием имени файла. Современные операционные системы имеют соот-иетствующие системы управления файлами. Некоторые из них могут работать с несколькими системами управления файлами. ( нстема управления файлами не существует сама по себе; она рнботает для конкретной операционной системы. Например, ГЛ I -16 разработана для MS-DOS; FAT - Windows NT.
Интерфейсные оболочки - предназначены для расширения возможностей по управлению операционной системой.
Системы программирования - это комплекс программных средств, предназначенных для тестирования и отладки программного обеспечения.
Задачи системы программирования - это разработка операционных систем; систем ассемблирования; компиляторов; за-груччиков и программ связывания; макропроцессоров; драйвером.
Утилиты - это специальные системные программы, с помощью которых можно обслуживать саму операционную систему; подготовить для работы носителей данных; выполнить перекодировку данных; осуществить оптимизацию размещения данных на носителе и т.д. Утилиты могут работать только в соот-негствующей операционной системе.
2. Функции ос
- прием от пользователя заданий или команд и их последующая обработка;
- прием и исполнения программных запросов на запуск, Приостановку и остановку других программ;
- загрузка в оперативную память подлежащих исполнению программ;
- инициация программы, т.е. передача ей управления, в ре-гультате чего процессор исполняет программу;
- идентификация всех программ и данных;
- обеспечение работы системы управления файлами и сис-11 мы управления базами данных;'
■'- обеспечение функций по организации и управлению всеми!
Операциямиввода-вывода; |
■ распределение памяти и организация виртуальной памяти;!
■ планирование и диспетчеризация задач; !
- организация механизмов обмена сообщениями и данных мёяСцу программами;
- защита одной программы от влияния другой;
- обеспечения сохранности данных;
- обеспечения работы систем программирования.
З.Архитектура ОС.
Наиболее общим переходом структуризации ОС является разделение её модулей на две группы: ядро, вспомогательные модули.
Ядро - это сердцевина ОС. Модули ядра выполняют базовые функции, решающие внутрисистемные задачи организации вычислительных процессов: переключение контекстов, обработка прерывания, управление вводом-выводом.
Вспомогательные модули - выполняются в виде библиотек процедур. К ним относятся:
- утилиты - программы, выполняющие отдельные задачи управления компьютерной системой;
- системные обрабатывающие программы - графические, текстовые редакторы, компиляторы, интерпретаторы, трансляторы, отладчики, компоновщики;
- программы, предоставляющие пользователю дополнительные услуги - блокнот, калькулятор, игры.
- библиотека процедур - библиотека математических функций.
Разделение ОС на ядро и вспомогательные модули осуществляют легкую расширяемость ОС. Вспомогательные модули являются транзитными, т.е. загружается в RAM только вовремя выполнения своих функций, что значительно экономит время и ресурсы. Для надежного управления кодов выполнения приложения ядро должно иметь определенные привилегии по отношению к приложению, иначе некорректное действие вспомогательных модулей может вмешаться в работу ОС и нарушить её.
4. Классификация процессов.Процесс - это система действий, реализующая определен-мум> (функцию в вычислительной системе и оформленная так, что управляющая программа вычислительной системы может ГШрераспределять ресурсы этой системы в целях обеспечения м v hi, i и программирования.
И зависимости от интервала существования процессы быва-•■' <
Процессы реального времени - такой вид процессов, требующих такого планирования, при котором гарантировалось бы окончание процесса до наступления некоторого конкретного Момента времени.
Интерактивные процессы - процессы, время существования коюрых должно быть не более интервала времени допустимой ррпкции ЭВМ на запросы пользователя.
11акетные - все остальные процессы.
I Io генеалогическому признаку процессы делятся на:
11орождающие - вид процессов, задающий требование для Порождения других процессов.
11орожденные - процессы, создаваемые по требованию дру-РИх процессов.
I Io результативности процессы бывают:
Эквивалентные - процессы, имеющие одинаковый конечный результат обработки одних и тех же исходных данных по одной и той же или даже различным программам на одном и том же или на различных процессорах.
Тождественные - эквивалентные процессы, обработка данных происходит по одной и той же программе, но трассы кото-ч рыч не совпадают.
Равные - тождественные процессы, трассы которых совпа-
'U1IOT.
Различные - все остальные процессы.
11о динамическому признаку:
IПоследовательные - процессы, интервалы которых не передаются во времени.
11араллельные - процессы, существующие одновременно на Рассматриваемом интервале времени.
Комбинированные - процессы, существующие на рассматриваемом интервале хотя бы в одной точке, но не существую-щие'й другой и существующие одновременно в некоторой одной точке.
I Io принадлежности к центральному процессору процессы:
Внутренние (программные) - развивающиеся на центральном процессоре.
Внешние - процессы, развитие которых происходит под контролем или управлением операционной системы на процессорах, отличных от центрального.
По принадлежности к операционной системы процессы:
Системные - процессы, при развитии которых исполняется программа из состава операционной системы.
Пользовательские - процессы, при развитии которых исполняется пользовательская (прикладная) программа.
По связанности процессы бывают:
Взаимосвязанными — процессы, ме^жду которыми с помощью системы управления процессами поддерживаются связи какого-либо рода: функциональные, пространственно-временные, управляющие, информационные.
Изолированные - процессы со слабыми связями.
Информационно-независимые - взаимосвязанные процессы, при развитии которые используют совместно некоторые ресурсы, но информационно не связаны между собой. Связь между такими процессами может быть либо функциональная, либо пространственно-временная.
Взаимодействующие - процессы, имеющие информационные связи. ......
Конкурирующие — взаимосвязанные процессы, имеющие связи по ресурсам (способ связи явный - с помощью явного обмена сообщениями между процессами, или неявный - с помощью разделяемых структур данных).