русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Вытесняющая многозадачность и многопоточность


Дата добавления: 2013-12-24; просмотров: 2736; Нарушение авторских прав


Разрядная архитектура

Windows 95 — первая 32-разрядная операционная система для компьютеров IBM PC. Она ориентирована на работу 32-разрядных программ, многие ее компоненты являются 32-разрядными.

Большинство программ для операционной системы MS DOS относилось к 16-разряд­ным программам, которые использовали реальный режим работы микропроцессора. Реаль­ный режим значительно ограничивает возможности программы, так как в этом режиме затруднен доступ в верхние (свыше 1 Мбайта) области памяти. Операционная система MS DOS не имеет средств для поддержки 32-разрядных программ, работающих в защищенном режиме микропроцессора. Чтобы такие программы могли работать в среде MS DOS, требуется дополнительное программное обеспечение, расширяющее функции MS DOS. Возможен также вариант, когда дополнительные функции, обеспечивающие защищенный режим, включаются непосредственно в код программы, увеличивая тем самым ее объем.

Операционная система Windows 95 полностью обеспечивает работу 32-разрядных программ, причем она спроектирована таким образом, что использование 32-разрядных программ в ее среде является наиболее оптимальным. В среде Windows 16-разрядные про­граммы также успешно функционируют, но они не могут задействовать все ресурсы системы.

Следует отметить, что 32-разрядные программы занимают больше оперативной и дисковой памяти, чем 16-разрядные программы. Однако это компенсируется, во-первых, увеличением скорости работы программ, во-вторых, удешевлением всех видов памяти, в том числе и электронной.

Операционная система Windows является многозадачной (multitasking — мультизадачной), т.е. она способна "одновременно" выполнять несколько программ. На самом деле один ми­кропроцессор может выполнять инструкции только одной программы. Однако операцион­ная система настолько оперативно реагирует на потребности той или иной программы, что создается впечатление одновременности их работы. Например, в процессе подготовки тек­ста можно параллельно печатать содержимое какого-либо файла и проверять на вирус же­сткий диск.



Многозадачность может быть кооперативной и вытесняющей [2, 5]. При коопера­тивной многозадачности (cooperative multitasking) операционная система не за­нимается решением проблемы распределения процессорного времени. Распределяют его сами программы. Причем активная программа самостоятельно решает, отдавать ли процес­сор другой программе. Момент передачи управления здесь зависит от хода выполнения за­дачи. Таким моментом должен быть системный вьпов, т.е. обращение к системе за какой-либо услугой (ввод или вывод на внешнее устройство и пр.). Фоновым задачам выделяется процессорное время при простое приоритетной задачи (ожидание нажатия клавиши и др.). Кооперативная многозадачность была реализована в среде Windows 3.1. В Windows 95 кооперативная многозадачность обеспечивается для 16-разрядных приложений, так как эта приложения, созданные для Windows 3.1, умеют самостоятельно распределять процессор­ное время.

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

активизации. Если задача обращается к операционной системе до истечения ее кванта вре­мени, то это также служит причиной переключения задач. Такой режим многозадачности endows 95 реализует для 32-разрядных приложений, а также для программ, написанных для MS DOS.

Многопоточностъ (multithreading) операционной системы означает, что рабо­тающие программы (процессы) могут разделяться на несколько частей, самостоятельно претендующих на процессорное время. Это обеспечивает одновременное выполнение программой нескольких не связанных друг с другом операций. Например, в табличном процессоре вычисления в разных ячейках благодаря многопоточности могут выполняться одновременно, причем параллельно с вычислениями могут быть организованы ввод дан­ных в ячейки,их вывод на печатающее устройство и т.п.



<== предыдущая лекция | следующая лекция ==>
ТРЕБОВАНИЯ К АППАРАТНОЙ ЧАСТИ | Использование виртуальной памяти


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.156 сек.