СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

ОС Раздел 1. Основы ОС.

Категория: Прочее

Нажмите, чтобы узнать подробности

Конспект лекций по дисциплине "Операционные системы". Содержит только раздел 1. Подходит к вопросам по ОС часть 1.

Просмотр содержимого документа
«ОС Раздел 1. Основы ОС.»

Введение

Цель: дать понятие программного обеспечения и прочих понятий связанных с ОС.


Современный компьютер — это универсальное, многофункциональное, электронное автоматическое устройство для работы с информацией. Компьютеры в современном обществе взяли на себя значительную часть работ, связанных с обработкой данных. По историческим меркам компьютерные технологии обработки информации еще очень молоды и находятся в самом начале своего развития, они сегодня преобразуют или вытесняют, старьте традиционные технологии обработки информации.

Программное обеспечение (ПО) компьютера можно разделить на общесистемное и прикладное программное обеспечение.

Операционная система (ОС), являясь основой общесистемного ПО, обеспечивает функционирование и взаимосвязь всех компонентов компьютера и предоставляет пользователю доступ к его аппаратным возможностям.

Прикладное программное обеспечение можно в свою очередь разделить на две группы программ: средства разработки и приложения.

Средства разработки — это инструменты программиста. Традиционными средствами разработки являются системы (среды) программирования (СП), использующие алгоритмические языки программирования (ЯП). Основой систем программирования являются трансляторы, т. е. программы, обеспечивающие перевод исходного текста программы (на ЯП) на машинный язык (объектный код), которые бывают двух типов — интерпретаторы и компиляторы.

Приложения — это программные продукты, предназначенные Для решения задач в какой-либо конкретной предметной области.

Многообразие приложений соответствует спектру задач, которые могут быть решены алгоритмически.

Ранние ЭВМ не предусматривали ОС, поэтому процессы запуска/остановки программы, присоединения внешних носителей Управлялись вручную или из прикладной программы. В середине 60-х годов ряд ведущих фирм-производителей ЭВМ — IВМ (США), ICL (Великобритания), СП (Франция) практически одновременно приступили к выпуску моделей машин (соответственно — IВМ 360,System 4, Iris 80), оснащенных операционными системами (operating system).

Наиболее совершенной и конкурентоспособной оказалась система ОS/360 (IВМ), в которой были заложены практически все основные черты ОС, позволяющие превратить ЭВМ в «автоматизированную фабрику» обработки информации при минимальном участии человека. ОS/360 и другие современные ей системы были ориентированы на обработку потока заданий (или пакетную обработку — batch processing), при которой пользователь не может вмешаться в ход выполняемой задачи, оперативно просмотреть промежуточные данные, т. е. оторван от машины.

Появление и широкое распространение видеотерминалов привели к возможности предоставить пользователю интерактивный диалоговый доступ к вычислительному процессу, которым он занимается. В ОS/360 фирмой и пользователями были внесены дополнения — появились системы ТSО, CICS. Известен ряд удачных отечественных разработок — PRIMUS, FOCUS. Появившиеся в последующий период ОС ориентировались исключительно на интерактивную работу пользователей — RSX, VMS и пр.

В настоящее время наиболее распространенной является интерактивная ОС UNIX, версии которой разработаны практически для всех моделей ЭВМ. Для IВМ РС-совместимых ЭВМ (ПЭВМ) в свое время была разработана UNIХ-подобная система МS/DOS (фирма MicroSoft). Следует согласиться с остроумным замечанием Питера Нортона о том, что «МS-DOS — это UNIX для дошкольников, UNIХ — это МS-DOS для лиц с высшим образованием».

ОС является первичной программной оболочкой для всякой ЭВМ; без ОС ЭВМ становится неодушевленным предметом. При включении электропитания ЭВМ автоматически осуществляется считывание с магнитного носителя, запись в оперативную память и запуск резидентных программ ОС, или загрузка ОС (loading). В некоторых системах процесс загрузки прерывается для запроса у оператора адреса (номера), внешнего устройства, на котором размещены программы ОС (резидентного устройства). При включении ПЭВМ поиск устройства с ОС осуществляется автоматически.

Резидентное устройство (точнее — НМД) часто называют boot-able, а процесс загрузки — boot («обувать»), что хорошо иллюстрирует, во-первых, «голый» статус компьютера без ОС, во-вторых, возможность «одеть» компьютер в разные ОС, при этом «образ машины» может измениться до неузнаваемости. Это давно и хорошо известно опытным пользователям больших компьютеров, а в последнее время стало «достоянием широких масс» в связи с тем, что последние модели ПЭВМ уже в состоянии работать с несколькими различными ОС – MS DOS, ОS/2, Windows 95/98/МЕ/NТ/2000, UNIX и пр.

ОС предназначены для выполнения следующих основных (тесно взаимосвязанных) функций:

  • управление данными;

  • управление задачами;

  • связь с внешней средой.

В различных ОС эти функции реализуются в различных масштабах и с помощью разных технических, программных, информационных методов.

Структурно операционная система представляет собой совокупность программ, управляющих ходом работы вычислительной машины, идентифицирующих прикладные. программы и данные и осуществляющих связь между машиной и оператором. Операционная система повышает производительность вычислительного комплекса за счет гибкой организации прохождения потока задач через машину, равномерной загрузки оборудования, оптимального использования всех ресурсов ЭВМ, стандартной организации хранения в машине больших массивов данных при наличии разнообразных способов доступа к ним.

Раздел 1. Операционная система ЭВМ. Основные принципы и понятия.

Тема 1.1. Функции и состав операционных систем

Цель: ознакомиться с основными функциями ОС и понятием программы ОС и конфигурации ОС.


Функции ОС. Операционная система — это набор программ, обеспечивающий организацию вычислительного процесса на ЭВМ.

Основные задачи ОС следующие:

  • увеличение пропускной способности ЭВМ (за счет организации непрерывной обработки потока задач с автоматическим переходом от одной задачи к другой и эффективного распределения ресурсов ЭВМ по нескольким задачам);

  • уменьшение времени реакции системы на запросы пользователей пользователями ответов от ЭВМ;

  • упрощение работы разработчиков программных средств и сотрудников обслуживающего персонала ЭВМ (за счет предоставления им значительного количества языков программирования и разнообразных сервисных программ).

Операционные системы могут классифицироваться по следующим показателям:

  • количество пользователей: однопользовательские ОС (МS-DOS, Windows) и многопользовательские ОС (VМ, UNIХ);

  • доступ: пакетные (ОS 360), интерактивные (Windows, UNIХ), системы реального времени (QNХ, Neutrino, RSХ);

  • количество решаемых задач: однозадачные ОС (МS-Dos) и многозадачные ОС Windows, UNIХ).

Операционная система предназначена для выполнения следующих основных (тесно взаимосвязанных) функций:

  • управление данными;

  • управление задачами (заданиями, процессами);

  • связь с человеком-оператором.

В различных ОС эти функции реализуются в различных масштабах и с помощью разных технических, программных, информационных методов и средств.

Структурно операционная система представляет собой совокупность программ, управляющих ходом работы вычислительной машины, идентифицирующих прикладные программы и данные и осуществляющих связь между машиной и оператором. Операционная система повышает производительность вычислительного комплекса за счет гибкой организации прохождения потока задач через машину, равномерной загрузки оборудования, оптимального использования всех ресурсов ЭВМ, стандартной организации хранения в машине больших массивов данных при наличии разнообразных способов доступа к ним.

В состав системного программного обеспечения входят также сервисные программы, которые предназначены для проверки исправности блоков ЭВМ, обнаружения и локализации отказов устройств и устранения их влияния на работу системы в целом.

Системное программное обеспечение ЭВМ предназначено для осуществления адаптируемости программ пользователей к изменениям состава ресурсов ЭВМ. Высокая производительность вычислительной системы обеспечивается операционной системой благодаря применению режимов пакетной обработки и мультипрограммного и наличию специальных программных средств для выполнения трудоемких операций ввода-вывода информации. Высокая производительность труда программиста достигается за счет предоставления ;но большого числа языков программирования; специальных биб1иотек программ; удобных средств ввода-вывода, средств отладки программ и оформления заданий.

К числу наиболее известных первых управляющих программ относятся комплексы SAGE, SABRE, MERCURE, реализованные на ЭВМ второго поколения. Для ЭВМ IВМ/360 были разработаны операционные системы, обеспечивающие пакетную технологию обработки данных и работу в реальном масштабе времени, а также реализацию многомашинных и мультипроцессорных комплексов.

Первая функционально полная ОС — ОS/360 была предложена фирмой IВМ в качестве оболочки ЭВМ IВМ/360. Разработка и внедрение ОС позволили разграничить функции операторов, администраторов, программистов, пользователей, а также существенно (в десятки и сотни раз) повысить производительность ЭВМ и степень загрузки технических средств. Версии OS/360/370/375 — МРТ (мультипрограммирование с фиксированным количеством задач), (с переменным количеством задач), (система с виртуальной памятью), (система виртуальных машин) — последовательно сменяли друг друга и во многом определили современные представления о роли ОС в общей иерархии систем управления данными и задачами при обработке данных на ЭВМ.

Ранние версии ОS/360 были ориентированы на пакетную обработку информации — входной поток заданий (на МЛ, МД или перфокартах) подготавливался заранее и поступал на обработку в непрерывном режиме. В дальнейшем возникли расширения ОS/360/375, допускающие диалоговую обработку данных с терминалов пользователя, последняя из версий (ОS 370) фактически предоставляла в распоряжение пользователя «виртуальную персональную ЭВМ» с полной мощностью вычислительной установки IВМ/360/375. Операционные системы других семейств (поколений), с самого возникновения ориентировались на интерактивное взаимодействие с пользователями.

Одно из основных требований к разработке программного обеспечения ЭВМ — модульность. Модульная структура программ и программных комплексов облегчает организацию работы больших коллективов программистов по созданию программного обеспечения. Другое важное требование к программному обеспечению — возможность развития программной системы. Выполнению этого требования способствует модульная организация программ. Существенным является требование простоты освоения, поддержания, эксплуатации и совершенствования возможностей программного обеспечения. Это позволяет обходиться небольшим числом специалистов, обслуживающих принятое к эксплуатации программное обеспечение.

Система программного обеспечения предназначена для эксплуатации многочисленными группами пользователей в различных организациях и предприятиях, поэтому она должна обладать свойствами гибкости, адаптируемости. Эти требования обеспечиваются применением принципов открытости, машинной независимости обрабатывающих программ, унификации использования периферийного оборудования и т. д. По возможности должна достигаться совместимость программного обеспечения различных ЭВМ и систем обработки данных. Как правило, совместимость программ обеспечивается в рамках ЭВМ одной аппаратной платформы. Программная совместимость для различных семейств ЭВМ достигается на уровне языков программирования.

Требование минимальности вмешательства человека в процесс обработки информации на ЭВМ удовлетворяется путем автоматизации различных этапов вычислительного процесса. В частности, автоматическое распределение ресурсов повышает эффективность использования вычислительной системы. Программное обеспечение должно удовлетворять также требованиям параметрической универсальности, функциональной избыточности (наличия в системе нескольких программ, реализующих одну и ту же функцию), функциональной избирательности (возможность конфигурирования программного обеспечения в соответствии с потребностями и возможностями конкретного пользователя).

Техническая документация на программные средства, являющаяся одним из важнейших элементов программного обеспечения, должна оформляться по единым стандартам. К технической документации относятся графические и текстовые документы, определяющие назначение, состав и структуру созданного программного средства. В них должны содержаться сведения, необходимые для тестирования, приемки, обучения пользователей, эксплуатации и наращивания возможностей программ. Выпуск документации является трудоемким процессом, поэтому желательно его автоматизировать.

Документация на программное обеспечение должна удовлетворять требованиям единства терминологии, номенклатуры и наименования документов, единой системы обозначений в документах, идентичности документов независимо от места их разработки. Кроме того, должны соблюдаться единые правила внесения изменений, учета и хранения документации. Детальность описания отдельных модулей программного обеспечения должна соответствовать уровню подготовки потенциальных пользователей (системного программиста, программиста-пользователя, оператора и т. д.).

Программы ОС. Программы ОС постоянно (резидентно) занимают в оперативной памяти объем, установленный при конфигурировании системы. Остальные части операционной системы по мере необходимости вызываются из внешней памяти на МД.

Операционная система обеспечивает осуществление в вычислительной системе следующих процессов:

  • обработки задач;

  • работы системы в режиме диалога и квантования времени;

  • работы системы в реальном масштабе времени в составе многопроцессорных и многомашинных комплексов;

  • связи оператора с системой;

  • протоколирования хода выполнения вычислительных работ;

  • обработки данных, поступающих по каналам связи;

  • функционирования устройств ввода-вывода;

  • использования широкого набора средств отладки и тестирования программ;

  • планирования прохождения задач в соответствии с их приоритетами;

  • ведения учета и контроля за использованием данных, программ и ресурсов ЭВМ.

Основные компоненты операционных систем — управляющие и обрабатывающие программы. Управляющие программы управляют работой вычислительной системы, обеспечивая в первую очередь автоматическую смену заданий для поддержания непрерывного режима работы ЭВМ при переходе от одной программы к другой без вмешательства оператора.

Управляющая программа определяет порядок выполнения обрабатывающих программ и обеспечивает необходимым набором услуг Для их выполнения. Основные функции управляющей программы: последовательное или приоритетное выполнение каждой работы (Управление задачами); хранение, поиск и обслуживание данных независимо от их организации и способа хранения (управление данными).

Программы управления задачами считывают входные потоки задач, обрабатывают их в зависимости от приоритета, инициирует одновременное выполнение нескольких заданий; вызывают процедуры; ведут системный журнал.

Программы управления данными обеспечивают способы организации, идентификации, хранения, каталогизации и выборки обрабатываемых данных. Эти программы управляют вводом-выводом данных с различной организацией, объединением записей в блоки и разделением блоков на записи, обработкой меток томов и наборов данных.

Программы управления восстановлением после сбоя обрабатывают прерывания от систем контроля, регистрируют сбои в процессоре и внешних устройствах, формируют записи о сбое в журнале, анализируют возможность завершения затронутой сбоем задачи и переводят систему в состояние ожидания, если завершение задачи невозможно.

Конфигурация системы. Прикладная программа в операционных системах может получить от ОС в процессе своей работы характеристики конкретной реализации системы, в среде которой она функционирует: имя, версию и редакцию операционной системы, тип и технические характеристики компьютера. В ОС обычно имеются средства локализации, позволяющие настроить систему на конкретное национальное (местное) представление данных: представление десятичных дробей, денежных величин, даты и времени.

Операционные системы предоставляют программе пользователя возможность узнать текущие дату и время. За начало отсчета, например, в МS-DOS принята дата 1 января 1980 г. В 0 часов 0 минут 0 секунд по Гринвичу, в UNIХ 1 января 1970 г. Системы предоставляют возможность измерения временных интервалов короче 1 секунды с помощью специальных системных вызовов. ОС может переводить дату и время из внутреннего числового представления в символьное (пригодное к выводу, например, на терминал); местное время во время по Гринвичу и наоборот; предоставлять информацию о часовом поясе, летнем и зимнем времени.



Тема 1.2. Управление данными в операционных системах

Цель: рассмотреть внешние устройства, накопители, понятие файловой системы, базовую операцию ввода вывода и понятие распределение ресурсов.


Управление данными включает следующие компоненты:

  • долговременное планирование — организацию размещения данных на внешних носителях, их выборку и предоставление пользовательским программам;

  • оперативное управление — распределение оперативной памяти под программы и данные, реализацию обмена данными между оперативной и внешней памятью;

  • управление внешними устройствами ввода-вывода и размещения данных.

Внешние устройства ЭВМ. Прежде всего, необходимо отметить, что типовая конфигурация внешних устройств (ВУ) в данном случае включает: терминал/консоль (экран и клавиатура), накопители на магнитных дисках (НМД) и принтер.

Принципы функционирования ВУ. Прежде всего, контроллеры ВУ ПЭВМ представляют собой стандартного размера электронные платы (интерфейсные карты, адаптеры и пр.), которые практически полностью взаимозаменяемы, что позволяет укомплектовать экземпляр ПЭВМ любым желаемым набором устройств (но не более 4—8, в зависимости от класса машины).

Контроллеры типовых устройств, как правило, являются несъемными и размещаются на системной плате ПЭВМ.

И далее, практически все устройства требуют для своей работы программной поддержки (как минимум — запуска и непрерывного функционирования специальных программ — драйверов устройств, или более сложных прикладных программ).

Накопители на магнитных носителях, файлы, циклы обработки. Накопители данного типа являются основной средой хранения информации в ЭВМ и разделяются на накопители на магнитных лентах (НМЛ) и магнитных дисках (НМД). В настоящее время устоялось следующее представление: НМД используются для оперативного (во время решения задач) хранения информации, НМЛ — для резервного (архивного) хранения (стримеры).

Файл (набор данных на внешнем носителе) рассматривается как совокупность записей одинаковой структуры (обычно, хотя и необязательно — фиксированной длины), каждая из которых представляет собой набор (агрегат) разнородных данных (в языках программирования — Раscal, Си).

Понятие «файл» появилось впервые в операционной системе ОS/360 фирмы IBM, причем в ранних версиях системы «настоящим файлом» считался только перфокарточный массив. В последующих ОС (RSX, UNIХ, МS-Dos) файлами становятся именованные организованные наборы данных на любых носителях и устройствах, за сохранность и обновляемость которых (а также передачу в прикладные программы /из прикладных программ) и несет ответственность ОС ЭВМ.

Цикл обработки файла (например, внесение изменений в счета клиентов) включает следующие операции (рис. 1.2):

  • открытие файла — занятие устройства, на котором файл размещен (например, МД), создание в оперативной памяти (ОП) управляющего блока, в котором записывается справка о состоянии файла и буфера (или набора буферов — буферного пула) для хранения текущей, обрабатываемой записи файла;

  • организацию цикла, управляемого файлом (заканчивается по исчерпании записей файла — наступлении состояния ЕОР — end-of-file), после чего выполняется некоторый оператор (обычно освобождение устройства). Цикл должен содержать команду типа READ, СЕТ (ввод записи) или PUT, WRITE (вывод записи) либо REWRITE (обновить запись). Команда READ может являться функциональным аналогом заголовка цикла.

  • закрытие файла — выполнение операций по внесению всех окончательных изменений в файл и его реквизиты, освобождение памяти, отведенной под файл, и устройства, на котором он размещался.

Таким образом, траектория данных, обрабатываемых в компьютере, выглядит следующим образом:

  • считывание (ввод) порции (блок) данных с накопителя (ВУ) и помещение его в область ОП (буфер);

  • извлечение данных из буфера, их обработка и помещение обратно или в другой (выходной) буфер;

  • после окончания обработки — вывод (запись) результатов на выходной накопитель также в форме одного или нескольких блоков.

При этом в различных ОС приняты различные принципы именования данных.

Сокращенное наименование файла может состоять только из имени. При этом устройство и берутся из системных умолчаний или пользовательских назначений; расширение — задается стандартным типом файла; версия — максимальная из существующих.

Спецификация файлов — соглашения о кратком групповом обозначении некоторой совокупности обрабатываемых, переименовываемых, удаляемых, копируемых и пр. файлов.

В спецификации файлов могут использоваться символы маскирования «*» и «?», вносимые в компоненты обозначения файла, причем «*» соответствует допустимой строке символов, а «?» — одному допустимому символу (примеры: поиск по версии файла, поиск начинающийся на первые три буквы в имени файла, поиск с двумя знаками в расширении файла).

Вначале для большинства ОС были установлены ограничения на длину и состав имени файла, во многом аналогичные ограничениям на идентификаторы переменных, принятых в то время в языках программирования:

  • имя может содержать только символы заглавной латиницы, цифры и подчеркивание;

  • имя должно начинаться с буквы;

  • длина имени файла не более 8 символов, длина расширения (типа) не более 3.

В дальнейшем, по мере развития и распространения ОС, эти ограничения во многом стали сниматься:

  • появилось понятие «длинного имени файла», включающего ранее запрещенные символы (пробелы и пр.);

  • были разрешены национальные символы в наименованиях файлов (кириллица и пр.).

Уровни доступа к данным, реализуемые ОС (либо ОС совместно с прикладными программами), приведены на рис. 1.3, При этом участок «Том — Каталог — Файл» реализуется во всех ОС. Участок «Блок — Строка — Слово — Символ» может поддерживаться как функциями ОС, так и в рамках прикладных программ. Иногда это распределение функций устанавливается пользователем (программистом) путем указания типа файла — например записе-ориентированный или потоко-ориентированный. Вернемся к проблеме соответствия ОС и СУБД (с точки зрения управления данными). Надо отметить, что СУБД оперируют данными на содержательном уровне, хотя физические структуры, используемые для этих целей, могут быть аналогичны структурам, создаваемым ОС (см. ниже файловые системы ОС).

Коренное отличие СУБД от файловых систем ОС состоит в том, что СУБД устанавливает связь между содержанием и адресом, а ОС — между именем и адресом данных. В то же время эта грань постоянно подвергается «атакам» с обеих сторон.

Накопители на магнитных дисках. Накопители на магнитных дисках получили наибольшее распространение. В НМД в качестве носителей данных используется пакет магнитных дисков, закрепленных на одном стержне, вокруг которого они вращаются с постоянной скоростью. Поверхность магнитного диска, покрытая ферромагнитным слоем, называется рабочей.

Дорожки резервных цилиндров пользователям недоступны. Системные средства обеспечивают замену дорожки основного цилиндра, ставшей дефектной, на дорожку запасного цилиндра. Запись и считывание информации в НМД производит механизм доступа, состоящий из держателей магнитных головок (блок магнитных головок).

Количество магнитных головок равно числу рабочих поверхностей на одном пакете дисков. Если пакет состоит из N=10 дисков, то механизм доступа состоит из 10 держателей с двумя магнитными головками на каждом из них. Держатели магнитных головок объединены в единый блок таким образом, чтобы обеспечить их синхронное перемещение вдоль всех цилиндров. Фиксируя блок механизма доступа на каком-либо из цилиндров с помощью только электронного переключения головок, можно сделать переход с одной дорожки на другую данного цилиндра. При фиксированном положении блока механизма доступа возможно обращение к любой из записей, находящихся на дорожках текущего цилиндра. Любая операция чтения (записи) информации с (на) магнитного Диска состоит из трех этапов. На первом этапе происходит механический подвод магнитной головки к дорожке, содержащей требуемые данные. На втором этапе обеспечивается ожидание момента, пока требуемая запись не окажется в зоне магнитной головки. На третьем этапе осуществляется собственно процесс обмена информацией между вычислительной машиной и магнитным диском. Таким образом, общее время, затрачиваемое на операцию записи-считывания, состоит из суммы времен поиска соответствующей дорожки, ожидания подвода записи (так называемое время ротационного запаздывания) и обмена с ЭВМ. Максимальное значение времени ротационного запаздывания равно времени, за которое совершается полный оборот магнитного диска.

Особенности и характеристики НМД для персональных компьютеров. Различают магнитные диски: жесткие (НЖМД, НВО, «винчестер») и гибкие (НГМД, РВО, «флоппи»). НВО являются более скоростными устройствами, чем РВО.

Винчестер (HDD) — накопитель на несъемном пакете магнитных дисков был создан в 1973 г. Все магнитные диски (объединенные в пакет дисков) герметически «упакованы» в общий кожух.

Магнитные диски не могут изыматься из НDD и заменяться на аналогичные.

Флоппи (FDD) (разработка фирмы IВМ) — накопитель на съемном гибком магнитном диске (флоппи), флоппи-диск имеет пластиковую основу и находится в пластиковом кожухе. Флоппи-диск вставляется в дисковод вместе с кожухом и вращается внутри кожуха со скоростью 300 об/мин.

В персональных компьютерах используются 2 типоразмера 5.25" (дискета заключена в гибкий пластиковый кожух) и 3.5" (дискета 3.5" заключена в жесткий пластиковый кожух).

Магнитная поверхность разбивается на дорожки (концентрические окружности, см. рис. 1.5). Дорожки нумеруются начиная с 0-й (максимальный радиус). Магнитная поверхность «разбита», также на секторы. Секторы нумеруются начиная с 1-го. Размер каждого сектора обычно равен 512 байт (для МS-DOS). Физический адрес сектора составляется как сумма (точнее — конкатенация) соответствующих номеров: № поверхности, № дорожки, № сектора.

Таким образом, информационный объем дискеты равен:

V = P * D * S * 512 (байт),

где V — информационный объем дискеты (байт); Р — количество поверхностей дискеты (одна или две); D — количество дорожек на поверхности; S — количество секторов на дорожке.

Если дискета является системной, то ядро МS-DOS размещается начиная с 0-й дорожки, как более надежной (большая длина и меньшая плотность записи).

Форматирование дискет производиться при инициализации дискеты изготовителем или пользователем с помощью утилиты операционной системы.

Кластер – минимальный размер места на диске, которое может быть выделено файловой системой для хранения одного файла. Определяется он, как правило, автоматически, при форматировании винчестера, по зависимости, указанной в таблице.

Небольшое исключение для системного раздела: если он меньше 2048 МБ, то размер кластера всегда 512 байт.

Файловые системы. Всякая операционная система создает на каждом томе (дискете, диске, пакете дисков и пр.) совокупность системных данных, которая называется файловой системой (файловой структурой).

Файловая система (пустая) создается при инициализации (разметке) тома, затем корректируется ОС (подсистемой управления данными) при текущей работе, о процессе создания, удаления, модификации (увеличения или уменьшения объема) файлов пользователя, содержащих программы или данные.

Файловая система включает в себя таблицу содержания и область данных — совокупность блоков на диске, идентифицируемых своими номерами / адресами. Обычно адрес блока состоит из 3 чисел — № цилиндра (совокупность дорожек, доступных при фиксированном положении блока 'головок считывающего устройства), № поверхности (дорожки в цилиндре), № блока на дорожке.

Пример простейшей (абстрактной) таблицы содержания, оглавления тома (диска, пакета дисков), которая в разных ОС имеет различные наименования (Таблица Содержания Тома), (Таблица Размещения Файлов), (Таблица Определения файлов) и т. п., приведена на рис. 1.6.

Рассмотренный пример таблицы оглавления относится к случаю так называемой прямой адресации доступа (рис. 1.7). Здесь очевидны следующие особенности:

  • таблица создается при инициализации и, даже будучи пустой, занимает определенный объем;

  • создание файла (даже состоящего из одного байта) приводит к выделению блока и занятию строки таблицы.

Косвенная — списковая (рис. 1.8, а) и мультисписковая адресации создают управляющие структуры при заполнении файла. Высвобождение памяти осуществляется автоматически при удалении промежуточного блока, содержащего также адрес последую файла. Очевидно, это увеличивает и опасность утраты данных при ошибочном удалении или разрушении промежуточного блока файла.

Базовый ввод-вывод. Базовый уровень ввода-вывода обеспечивает обмен с файлом, интерпретируемым как одномерный массив байтов с прямым последовательным доступом.

В начале работы с файлом его создают или открывают. При записи в файл записываются очередные байты, расположенные в памяти процесса.

Прямой доступ к файлу реализуется вызовом соответствующей функции, устанавливающей указатель чтения/записи в требуемую позицию. Позиционирование возможно в тех файлах, где оно допускается типом файла или природой внешнего устройства.

По окончании работы с файлом его следует закрыть. При завершении программы все открытые файлы закрываются автоматически.

Особенность каталога состоит в том, что запись в него может делать только система — программа может только читать элементы каталога.

Операционные системы предоставляют следующие системные вызовы: запрос на смену и получение имени текущего каталога; создание, открытие, закрытие, удаление, переименование и получение информации о файле или каталоге, позиционирование в них.

Разделение доступа к данным в ОС. Пользователи, которым разрешено входить в систему, перечислены в учетной базе пользователей. Пользователи объединены в группы; последние перечислены в учетной базе групп. Каждому пользователю и каждой группе присвоены целочисленные идентификаторы.

Входя в систему, пользователь сообщает ей свое имя, по которому определяется его идентификатор и права доступа. Вызывая команды, пользователь тем самым порождает процессы, которые наследуют его права, пользовательский и групповой идентификаторы.

Файл можно читать, писать и выполнять. Если файл является каталогом, выполнение означает поиск в нем. Права процессов при доступе к файлу хранятся в атрибутах защиты файла. Эти атрибуты при создании файла могут быть изменены только на основе соответствующих прав.

Проверка прав происходит, когда процесс пытается открыть Файл для чтения или записи, выполнить его.

Все пользователи, имеющие доступ в систему, разделены по отношению к файлу на три категории: владельцы (эффективный пользовательский идентификатор процесса совпадает с пользовательским идентификатором файла), члены группы (эффективный групповой идентификатор процесса совпадает с групповым идентификатором файла) и прочие.

Управление периферийными устройствами. Существует два типа управления периферийными устройствами — прямой и косвенный.

Прямое управление реализует непосредственную связь между процессором и периферийным устройством. Управление осуществляется с помощью последовательности специальных команд. При этом центральный процессор реализует полный алгоритм: инициализацию, проверку готовности, останов.

При косвенном управлении между процессором и периферийным устройством помещается специальный процессор, который осуществляет управление операциями ввода/вывода. Такой процессор называется каналом. Центральный процессор инициирует ввод/вывод и переход на выполнение других операций, а канал управляет периферийным устройством по специальной программе, канальной. Для синхронной работы центрального процессора и канала используются флаги занятости или прерывания. Программа управления периферийным устройством — супервизор ввода/вывода— в ответ на прерывание планирует и организует ввод/вывод, при необходимости организует обновление данных. Для сглаживания скоростей в периферийном канале и управляющем устройстве между ними ставится буфер, роль которого выполняет оперативная память. При определении длины буфера должен обеспечиваться компромисс между эффективностью использования оперативной памяти и внешней памяти (чем длиннее буфер, тем больше времени работает канал независимо от центрального процессора).

Форматы файлов. В зависимости от типа и назначения файлов и возможностей ОС (методов доступа) файл может передаваться в прикладную программу как целое или блоками (физическими записями) либо логическими записями (строками, словами, символами).



Тема 1.3. Управление заданиями (процессами, задачами)

Цель: дать понятие процессу, ресурсу, процессору, рассмотреть управление процессами и управление памятью.


Основными понятиями управления прохождением задач в ЭВМ являются процесс, задача, работа, программа, ресурс, дисциплина распределения ресурса.

Процесс — минимальный программный объект, обладающий собственными системными ресурсами (запущенная программа).

Ресурс — любой потребляемый (расходуемый) объект. По запасам ресурсы подразделяются на исчерпаемые и неисчерпаемые. Потребители ресурсов — процессы. Ресурс — средство вычислительной системы, которое может быть выделено процессу на определенный интервал времени.

Процессор — любое устройство в составе ЭВМ, способное автоматически выполнять допустимые для него действия (процессоры, каналы и устройства, работающие с каналами). Реализация системы управления процессами в составе ОС предъявляет определенные требования к свойствам процессоров.

Управление процессами. Процесс — это программный модуль, выполняемый в центральном процессоре (СРU). Операционная система контролирует следующую деятельность, связанную с процессами:

  • создание и удаление процессов;

  • планирование процессов;

  • синхронизация процессов;

  • коммуникация процессов;

Не следует смешивать понятия процесс и программа. Программа — это план действий, а процесс — это само действие, поэтому понятие процесса включает:

  • программный код;

  • данные;

  • содержимое стека;

  • содержимое адресного и других регистров процессора.

Различают следующие состояния процесса:

  • новый (процесс только что создан);

  • выполняемый (команды программы выполняются в СРU);

  • ожидающий (процесс ожидает завершения некоторого события, чаще всего операции ввода-вывода);

  • готовый (процесс ожидает освобождения СРU);

  • завершенный (процесс завершил свою работу).

Планирование процессов. Понятие очереди. Система управления процессами обеспечивает прохождение процесса через компьютер. В зависимости от состояния процесса ему должен быть предоставлен тот или иной ресурс. Например, новый процесс необходимо разместить в основной памяти, следовательно, ему необходимо выделить часть адресного пространства. Процессу в состоянии готовый должно быть предоставлено процессорное время. Выполняемый процесс может потребовать оборудование ввода-вывода и доступ к файлу.

Распределение процессов между имеющимися ресурсами носит название планирование процессов. Одним из методом планирования процессов, ориентированных на эффективную загрузку ресурсов, является метод очередей ресурсов. Новые процессы находятся во входной очереди, часто называемой очередью работ — заданий.

Входная очередь располагается во внешней памяти, во входной очереди процессы ожидают освобождения ресурса — адресного пространства основной памяти.

Сигналы. Сигнал является механизмом передачи требования от одного процесса к другому на немедленное выполнение действия.

Семафоры. Являются механизмами передачи сообщений от одного потока к другому о наступлении некоторого события.

Планирование работы процессора. Краткосрочный планировщик выбирает процессы из очереди готовых процессов и передает их на выполнение в СРU). Существуют различные алгоритмы или стратегии решения этой задачи, отличающиеся отношением к критериям планирования.

Стратегия планирования процессора. Первый пришел — первый обслуживается — FIFO. . FIFO является наиболее простой стратегией планирования процессов и заключается в том, что процессор передается тому процессу, который раньше всех других его запросил.

Обычно приоритет — это целое положительное число, находящееся в некотором диапазоне, например от 0 до 7 или от 0 до 1024.

Будем считать, что чем меньше значение числа, тем выше приоритет процесса. Приоритеты назначаются, исходя из совокупности внутренних и внешних по отношению к операционной системе факторов. Внутренние факторы:

  • требования к памяти;

  • количество открытых файлов;

  • отношение среднего времени ввода-вывода к среднему времени Использования ресурсов СРU и так далее.

Внешние факторы:

  • важность процесса;

  • тип и величина файлов, используемых для оплаты;

  • отделение, выполняющее работы, и так далее.

Внутренние факторы могут использоваться для автоматического ,,назначения приоритетов самой операционной системой, а внешние для принудительного, с помощью оператора.

Управление невиртуальной памятью. Свопинг. Свопингом (перекачкой) называется метод управления памятью, основанный на том, что все процессы, участвующие в мультипрограммной обработке, хранятся во внешней памяти.

Процесс, которому выделен СРU, временно перемещается в основную память. В случае прерывания работы процесса он перемещается обратно во внешнюю память.

Замечание: при свопинге из основной памяти во внешнюю (и обратно) перемещается вся программа, а не ее отдельная часть.

Свопинг иногда используют при приоритетном планировании СРК. В этом случае с целью освобождения памяти для высокоприоритетных процессов, низкоприоритетные процессы перемещаются во внешнюю память.

Основное достоинство страничной организации памяти заключается в том, что она позволяет свести к минимуму общую фрагментации за счет полного устранения внешней фрагментации и минимизации внутренней фрагментации.

Базовый метод. Адресное пространство основной и внешней памяти разбивают на блоки фиксированного размера, называемые страничные рамки. Логическое адресное пространство программы также разбивается на блоки фиксированного размера, называемые страницами. Размеры страничных рамок и страниц совпадают. Процесс загружается в память постранично, причем каждая страница помещается в любую свободную страничную рамку основной памяти.

Каждый адрес, генерируемый процессором, состоит из двух частей: П — номер страницы и Д — смещение в пределах страницы. Номер страницы может использоваться как индекс для таблицы страниц.

Управление виртуальной памятью. Все методы управления памятью имеют одну и ту же цель — хранить в памяти мультипрограммную смесь, необходимую для мультипрограммирования, рассмотренные ранее методы предполагали, что вся программа перед выполнением должна быть размешена в основной памяти. Виртуальная память — это технология, которая позволяет выполнять процесс, который может только частично располагаться в основной памяти. Таким образом, виртуальная память позволяет выполнять программы, размеры которых превышают размеры физического адресного пространства.

Перемещение страниц по запросу. Виртуальная память чаще всего реализуется на базе страничной организации памяти совмещенной со свопингом страниц.

Свопингу подвергаются только те страницы, которые необходимы процессору. Таким образом, перемещение страниц по запросу означает, что:

  • программа может выполняться СРU, когда часть страниц находится в основной памяти, а часть — во внешней;

  • в процессе выполнения новая страница не перемещается основную память до тех пор, пока в ней не возникла необходимость.

Алгоритм распределения страничных рамок. Алгоритм распределения страничных рамок решает, сколько страничных рамок в основной памяти выделить каждому из процессов мультипрограммной смеси. Алгоритм замещения страниц решает, какую из страниц выбрать в качестве жертвы.

FIFO. Наиболее простым алгоритмом замещения страниц является алгоритм FIFO. Этот алгоритм ассоциирует с каждой страницей время, когда эта страница была помещена в память. Для замещения выбирается наиболее старая страница.

Учет времени необязателен, когда все страницы в памяти связаны в FIFO-очередь, а каждая помещаемая в память страница добавляется в хвост очереди.

Алгоритм учитывает только время нахождения страницы в памяти, но не учитывает используемость страницы. Например, первые страницы программы могут содержать переменные, используемые на протяжении работы всей программы. Это приводит к немедленному возвращению к только что замещенной странице.

Фрагментация памяти решение проблемы.



Тема 1.4. Связь с оператором

Цель: рассмотреть типы пользователей ОС, разновидности интерфейсов, клавиатура, виджеты.


В общем случае, конечно, следует говорить о связи с внешней средой, поскольку, например, при использовании ЭВМ в системах управления технологическими комплексами (производство, летательные аппараты, корабли и пр.) человек может быть исключен (полностью или частично) из контура управления и внешними устройствами ЭВМ будут датчики (скорости, высоты, давления, температуры) и эффекторы (приводы рулей, манипуляторы, сервомоторы вентилей и пр.).

Связь с пользователем, сокращенно поименованная здесь как связь с оператором, — как говорят англичане, последняя в списке, но не по важности функция ОС.

Типология связи с человеком определяется как уровнем развития программного обеспечения, так и техническими средствами. Связь с пользователем включает:

  • командный (или иной) интерфейс по управлению системными процессами в вычислительной системе (собственно функции оператора ОС). Пользователь (привилегированный) осуществляет запуск-останов программ, подключение-отключение устройств и прочие релевантные операции;

  • интерфейс по управлению пользовательскими процессами контроль состояния процесса, ввод-вывод данных в процесс и из процесса.

В состав пользователей в общем случае включаются следующие группы лиц, контактирующих с системой:

  • администратор системы: лицо или группа, отвечающая за сопровождение данных, назначение уровней доступа, включение/исключение пользователей;

  • оператор системы, осуществляющий сопровождение вычислительного процесса;

  • прочие пользователи (не обладающие привилегиями доступа к данным), в том числе:

    • операторы подготовки данных (ОПД) — персонал, осуществляющий ввод данных с рабочих листов или документов, на основе соответствующих инструкций, в среде специальных программных интерфейсов;

    • интерактивные пользователи (ИП) — лица, имеющие доступ на ввод, коррекцию, обновление, уничтожение и чтение данных в рамках, как правило, ограниченной области БД;

    • конечные пользователи (КП) — лица, использующие БД для получения справок и решения задач.

Очевидно, что именно оператор ЭВМ является естественным пользователем ОС; все же прочие пользователи становятся таковыми лишь вследствие расширения функций пользователя в связи с интеграцией (особенно в случае персональных ЭВМ) функций конечного пользователя, администратора системы и оператора.

Интерфейс — это способ общения пользователя с персональным компьютером, пользователя с прикладными программами и программ между собой. Интерфейс служит для удобства управления программным обеспечением компьютера. Интерфейсы бывают однозадачные и многозадачные, однопользовательские и многопользовательские. Интерфейсы отличаются между собой по удобству управления программным обеспечением, то есть по способу запуска программ. Существуют универсальные интерфейсы, допускающие все способы запуска программ.

Запуска программ, в том числе позволяет запускать программы при помощи меню кнопки Пуск.

Разновидности интерфейсов. Интерфейсы отличаются по способу доступа к командным файлам программ.

Командный (текстовый) интерфейс. Всякая операционная система имеет командный интерфейс (иногда в скрытой форме).

Если снять шелуху текстовых или графических оболочек или интерфейсов, то «на глубине» вы всегда найдете командный интерфейс.

В большинстве ОС в настоящее время сложился более или менее унифицированный формат командной строки. Командная строка включает в себя:

  • тип операции (имя команды или программы);

  • рабочий вход (входные файлы или устройства);

  • рабочий выход (выходные файлы или устройства);

  • управляющий вход (управляющие параметры или ключи команды);

  • управляющий выход (обычно — протокол, содержащий диагностику ошибок, код завершения или другую информацию).


Текстовый или графический полноэкранный интерфейс. Он имеет, как правило, в верхней части экрана систему меню с подсказками.

Меню часто бывает выпадающим. Для управления компьютером курсор экрана или курсор мыши после поиска в дереве каталогов устанавливается на командные файлы программ (*.ехе, *.сom) и для запуска программы нажимается клавиша nter или правая кнопка мыши. Различные файлы могут выделяться разным цветом или иметь разный рисунок.

Каталоги (папки) отличаются от файлов размером или рисунком. Данный интерфейс является основным для всех видов программных оболочек. Такой интерфейс весьма удобен, особенно при работе с файлами, поскольку обеспечивает высокую скорость выполнения операций, позволяет создавать пользовательское меню, запускать приложения по расширению файлов, увеличивает скорость работы с программами.

Графический многооконный пиктографический интерфейс. Представляет собой рабочий стол, на котором располагаются пиктограммы (значки или иконки программ). Все операции производятся как правило, мышью. Для управления компьютером курсор МЫШИ подводят к пиктограмме и запуск программы осуществляют щелчком левой кнопки мыши по пиктограмме. Это наиболее удобный и перспективный интерфейс, особенно при работе с программами.

Терминалы. Терминалы, или терминальные устройства, ЭВМ являются важнейшей компонентой систем", основанных на человеко-машинном взаимодействии. Это диалоговые или интерактивные устройства, предназначенные для ввода/вывода небольших количеств информации, первоначально с целью управления вычислительным процессом и наблюдения за его ходом, а в дальнейшем — также для ввода-вывода исходных данных и результатов работы программ.

Рассмотрим подробнее клавиатуру и экран консоли. Клавиатура (рис. 1,25) включает следующие области (заметим, что ряд областей или отдельных клавиш продублирован).

1. Символьная область. Здесь находятся клавиши, являющиеся основными для ПМ и механических терминалов, — строка цифровых клавиш, три строки буквенных клавиш, пробел (Sрасе). Необходимость совместного использование символов латиницы (А—7.) и кириллицы (А—Я) создает проблему размещения символов по клавишам. Как известно, месторасположение символов отражает их частоту и совместную встречаемость в словах соответствующего языка, в связи с чем отечественные клавиатуры в первой символьной строке содержат буквы ЙЦУКЕН, англо-американскому стандарту соответствует строка QWERTY.

Первые отечественные терминалы использовали в качестве основы размещение ЙЦУКЕН, привязывая к символам кириллицы соответствующую им по правилам транслитерации латиницу: Й/Q, Ц/W, У/E, К/R, Е/T, Н/Y и т. п. На консоли ПЭВМ поддерживаются два стандарта и размещение символов имеет вид О/J, Ц/W, Е/T, Я/Z, Т/N, У/E, что обычно смущает начинающего пользователя.

2. Функциональная клавиатура (ФК), сохранившаяся как знак преемственности со старыми терминалами, хотя принципы обмена информацией консоль-ЭВМ здесь таковы, что необходимость в ней отсутствует (вся клавиатура является программно-управляемой). За последние годы сложились определенные стандарты-де-факто применения ФК, например F1 — НЕLР (Помощь, подсказка), F10—F12 — Завершение работы программы и т. п.

3. Клавиши редактирования — INS — включение/выключение режима вставки символов, Dе1 — удаление текущего символа, F8, Sрасе — удаление символа слева.

4. Управляющие клавиши (изменяют значение нажимаемого одновременно с ними символа):

Shift — переключение регистров, имеется также на любой ПМ. В буквенной области Shift переключает строчные символы на заглавные, в цифровой области — цифры на служебные символы и т . п.);

sLоск — фиксация верхнего регистра, в отличие от ПМ, действует только на буквенные клавиши;

trl — появился впервые на VT100. Позволяет вводить коды, которым не соответствуют какие-либо обычные символы. Например, trl+Z вводит символ ЕОF — конец файла,

lt — появляется на АNSI-терминале. Расширяет возможности trl. Например, lt+2+1+9 вводит | — символ т. н. псевдографики.

5. Enter — ввод. Является символом окончания строки, соответствует клавише механического терминала, клавиша продублирована.

Клавиши управления курсором —  Стрелка влево,  — вправо,  — стрелка вверх.  — стрелка вниз, Home — начало, nd — конец, PgUp — страница назад, PgDn — страница вперед.

NumLock — зафиксировать цифровой режим. Дубль клавишей управления курсором находится левее, перед символьной областью.

7. Клавиша sсаре (Выйти) впервые появляется на VT100 и реализует выход из текущей программы. Обычно так же программируется и на ПЭВМ.

Нажатие на клавишу вырабатывает не код символа, а номер клавиши (поэтому основные и дублирующие символы/области в принципе различаемы). Эта информация затем обрабатывается драйвером клавиатуры программой, постоянно находящейся в ОП и преобразовывающей номер клавиши в код символа, который выводится на экран и поступает в распоряжение работающей прикладной программы. Этот же драйвер ответствен за переход с латиницы на кириллицу. В отличие от механических терминалов и старинных ВТ, на консоли нет клавиши переключения . Поскольку драйверов весьма много (всякий себя уважающий программист в середине своей карьеры, как правило, пишет свой драйвер), надо иметь в виду, что переключение может осуществляться по-разному. Обычно используются сочетания управляющих клавиш (например Shift+Alt, Shift+Shift — левая и правая клавиши и пр.). Отсутствие лампочки, которая на старых ВТ указывала, что включен регистр «Лат» (или «Рус»), компенсируется обычно появлением на экране цветной Рамки или надписей RU, EN в углу экрана.

Экран. В настоящее время сформировались следующие основные режимы представления и управления информацией на экране, которым соответствуют определенные сценарии диалога человек-ЭВМ (в текстовом режиме):

  • режим командной строки;

  • режим форматированного экрана;

  • режим меню.

1. Режим командной строки. Работа в этом режиме мало чем отличается от работы с механическим терминалом или с самыми первыми ВТ.

Экран состоит из двух областей — командной строки (аналога строки, на которой находится каретка ПМ) и протокола диалога (аналога отрезка бумажной ленты). На экране пользователь ввел команду DIR, просмотрел результаты и вводит команду СОРУ. Однако здесь появляется важный новый объект (как и на первых ВТ) — курсор, или активная область экрана, с которой пользователь работает в данный момент.

Необходимости откорректировать строку используют клавишами  и , перемещающие курсор к месту исправления.

Остальные клавиши управления курсором в командном режиме не задействованы. Из этого правила, конечно, есть исключения: в некоторых системах  позволяет вызвать в командную строку предшествующую команду, что создает известные удобства при вводе серии сходных команд. Клавиши  и  здесь дают возможность перелистать журнал, где хранятся введенные команды, выбрать, исправить и выполнить требуемую команду.

2. Режим форматированного экрана (ФЭ). В этом случае экран представляет собой совокупность окон, каждое из которых содержит некоторое элементарное данное и обычно снабжено текстовым комментарием. Если командный режим в основном ориентирован на управление вычислительными процессами (хотя и может быть применен для ввода/вывода данных), ФЭ в основном именно на эти функции (здесь, как и везде, есть исключения, например какое-то из окон может использоваться для ввода команд).

Видимая на экране в режиме ФЭ запись является т. н. текущей или активной. Данные, составляющие содержимое ее полей, находятся в оперативной памяти и могут быть изменены путем подвода курсора и редактирования в окне. Интерпретация клавиш управления курсором в ФЭ зависит от программы, с которой осуществляется работа, однако сложились следующие стереотипы, справедливые для многих популярных программных средств:

  — переход внутри окна на одну позицию;

  — переход к следующему/предшествующему окну;

mе — переход к началу поля;

nd — переход к концу поля;

gUр — вызвать предшествующую запись (переместить указатель текущей записи к началу файла);

gDn — вызвать последующую запись (переместиться к концу файла).

3. Графический интерфейс пользователя. Появление операционных систем и оболочек с развитыми диалоговыми графическими средствами и средств программирования, позволяющих создавать графические интерфейсы, а особенно — объектно-ориентированных систем программирования — привело к внедрению и широкому распространению элементов экранного интерфейса.

Графический интерфейс включает следующие понятия — рабочий стол, окна, пиктограммы, элементы графического интерфейса (виджеты), указывающее устройство (мышь).

После запуска программа обычно создает окно, с которым она ассоциируется и работает. Пользователь, работая с окном и находящимися в нем объектами, заставляет операционную систему (или программную оболочку) посылать программе сообщения, активизирующие необходимые пользователю возможности программы.

В процессе работы программа также может создавать другие окна (выбора, диалога, обрабатываемого файла и др.) и получать от них сообщения, таким образом, стандартизируются часто используемые элементы диалога с пользователем.

При уменьшении некоторого окна до пиктограммы освобождается место для другого окна, которое может быть увеличено или уменьшено в соответствии с потребностями.

Основные элементы графических интерфейсов (виджеты). Виджет — это заготовка части пользовательского интерфейса (кнопка, часть меню, пиктограмма и т. д.) с параметрами, привязываемая к окну экрана терминала. Наиболее распространенные: кнопка (Button); радиокнопка (Radio Button); флажок (Сheck Вох); список (ListBox); полосы прокрутки и т. д.

Управляющие кнопки – предназначены для выполнения действий. Действие кнопки написано на ней. В действие кнопку приводят нажатием мыши на ней. Если в конце названия кнопки присутствуют три точки, то кнопка вызывает диалоговое окно.

Поле ввода – область, где пользователь может вводить информацию с клавиатуры. Указатель мыши в этом поле меняет форму, если в этот момент щелкнуть мышью, то в поле появляется курсор и можно вводить данные.

Список – элемент, содержащий все возможные в каждом конкретном случае значения, которые пользователь может установить. Добавить и изменить эти значения непосредственно в списке нельзя.

Раскрывающийся список – при нажатии на пиктограмму со стрелкой открывается список всех возможных значений, которые можно выбрать для установки в этом элементе.

Поле ввода со счетчиком – обычно используется для ввода числовых значений. Его можно заполнить как обычное поле ввода или воспользоваться кнопочками, расположенными справа. В этом случае значение в поле будет изменяться (соответственно увеличиваться и уменьшаться) с наиболее оптимальным шагом и при этом не превысит предельных значений. Поэтому рекомендуется пользоваться именно счетчиком.

Флажок – переключатель для режима работы, описание которого находиться справа от квадрата. Щелчком мыши он может быть включен – внутри квадрата изображен значок или сброшен, внутри квадрата пусто.

Зависимые переключатели (радиокнопки) – группа переключателей для выбора одного из нескольких возможных взаимоисключающих режимов работы. Описание режимов находиться справа от кружков.

Регулятор – используется для установки параметров от минимального до максимального с помощью «движка».