Пользовательские интерфейсы
По реализации интерфейса пользователя различают неграфические и графические операционные системы. Неграфические операционные системы реализуют интерфейс командной строки. Основным устройством управления в данном случае является клавиатура. Управляющие команды вводят в поле командной строки, где их можно и редактировать. Исполнение команды начинается после ее утверждения, например, нажатием клавиши Enter. Для компьютеров платформы IBMPC интерфейс командной строки обеспечивается семейством операционных систем под общим названием MS-DOS (версии от MS-DOS 1.0 до MS-DOS 6.2).
Графические операционные системы реализуют более сложный тип интерфейса, в котором в качестве органа управления кроме клавиатуры может использоваться мышь или адекватное устройство позиционирования. Работа с графической операционной системой основана на взаимодействии активных и пассивных экранных элементов управления.
В качестве активного элемента управления выступает указатель мыши – графический объект, перемещение которого на экране синхронизировано с перемещением мыши.
В качестве пассивных элементов управления выступают графические элементы управления приложений (экранные кнопки, значки, переключатели, флажки, раскрывающиеся списки, строки меню и многое другое).
Характер взаимодействия между активными и пассивными элементами управления выбирает сам пользователь. В его распоряжении приемы наведения указателя мыши на элемент управления, щелчки кнопками мыши и другие средства.
Лекция 3.2. ОС Windows
Разрядная архитектура
Первая 32–разрядная ОС для компьютеров IBM PC - Windows 95. Она появилась в результате слияния ОС MS-DOS и ее графической оболочки Windows 3.1. Операционная система Windows ориентирована на работу 32-разрядных программ, многие ее компоненты являются 32-разрядными. Разрядность – это максимальное количество разрядов двоичного числа, над которым одновременно может выполняться машинная операция, в т.ч. и операция передачи информации; чем больше разрядность, тем, при прочих равных условиях, будет больше и производительность ПК.
Большинство программ для ОС MS DOS относилось к 16-разрядным программам, которые использовали реальный режим работы микропроцессора. Реальный режим значительно ограничивает возможности программы, т.к. в этом режиме затруднен доступ в верхние (свыше 1 Мбайта) области памяти. MS-DOS не имеет средств для поддержки 32-разрядных программ, работающих в защищенном режиме микропроцессора. Чтобы такие программы могли работать в среде MS-DOS, требуется дополнительное программное обеспечение, расширяющее функции MS-DOS. Возможен так же вариант, когда дополнительные функции, обеспечивающие защищенный режим, включаются непосредственно в код программы, увеличивая тем самым ее объем.
ОС Windows полностью обеспечивает работу 32-разрядных программ, причем она спроектирована таким образом, что использование 32-разрядных программ в ее среде является наиболее оптимальным. В среде Windows также успешно функционируют 16-разрядные программы, но они не могут задействовать все ресурсы системы.
32-разрядные программы занимают больше оперативной и дисковой памяти, чем 16-разрядные. Но это компенсируется, во-первых, увеличением скорости работы программы, во-вторых, удешевлением всех видов памяти, в т.ч. и электронной.
3.2.2. Многозадачность и многопоточность
ОС Windows является многозадачной (мультизадачной), т.е. она способна «одновременно» выполнять несколько программ. На самом деле один МП может выполнять инструкции только одной программы. Однако ОС настолько оперативно реагирует на потребности той или иной программы, что создается впечатление одновременности их работы. Например, в процессе подготовки текстового документа можно параллельно печатать содержимое какого-либо файла и проверять на вирус жесткий диск.
Многозадачность может быть кооперативной и вытесняющей. При кооперативной многозадачности ОС не занимается решением проблемы распределения процессорного времени. Распределяют его сами программы. Причем активная программа (т.е. та, с которой работают в настоящий момент) самостоятельно решает, отдавать ли процессор другой программе. Момент передачи управления здесь зависит от хода выполнения задачи. Таким моментом должен быть системный вызов, т.е. обращение к системе за какой-либо услугой (ввод или вывод на внешнее устройство и пр.). Фоновым задачам выделяется процессорное время при простое приоритетной задачи (ожидание нажатия клавиши и др.).
Кооперативная многозадачность была реализована в среде Windows 3.1. В Windows кооперативная многозадачность обеспечивается для 16-разрядных приложений, т.к. эти приложения, созданные для Windows 3.1., умеют самостоятельно распределять процессорное время.
При вытесняющей многозадачности распределением процессорного времени между программами занимается ОС. Она выделяет каждой задаче фиксированный квант времени процессора. По истечении этого кванта времени система вновь получает управление, чтобы выбрать другую задачу для ее активизации. Если задача обращается к ОС до истечения ее кванта времени, то это также служит причиной переключения задач. Такой режим многозадачности Windows реализует для 32-разрядных приложений, а также для программ, написанных для MS-DOS.
Многопоточность операционной системы означает, что работающие программы (процессы) могут разделяться на несколько частей. При этом каждая часть самостоятельно претендует на процессорное время. Это обеспечивает одновременное выполнение программой нескольких не связанных друг с другом операций. Например, в ТП вычисления в разных ячейках благодаря многопоточности могут выполняться одновременно, причем параллельно с вычислениями могут быть организованны ввод данных в ячейки, их вывод на печатающее устройство и т.п.