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





НазваниеОперационная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной
страница8/9
Дата публикации05.12.2014
Размер0.78 Mb.
ТипДокументы
100-bal.ru > Информатика > Документы
1   2   3   4   5   6   7   8   9

Следующим этапом в развитии Windows стало появление Windows 2000 и Windows Me (Millennium Edition - редакция тысячелетия). Система Windows 2000 разработана на основе Windows NT и унаследовала от нее высокую надежность и защищенность информации от постороннего вмешательства. Операционная система Windows Me стала наследницей Windows 98, но приобрела многие новые возможности. Прежде всего, это улучшенная работа со средствами мультимедиа, возможность записывать не только аудио, но и видеоинформацию, мощные средства восстановления информации после сбоев и многое другое. Постепенно разница между разными системами Windows стирается, и новая операционная система Windows XP предназначена для замены как Windows 2000, так и Windows Me.

Управление памятью в Windows

Каждому процессу в Win32 доступно линейное 4-гигабайтное (2^32 = 4 294 967 296) виртуальное адресное пространство. Обычно верхняя половина этого пространства резервируется за операционной системой, а вторая половина доступна процессу.

Виртуальное адресное пространство процесса доступно всем потокам этого процесса. Иными словами, все потоки одного процесса выполняются в едином адресном пространстве.

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

Виртуальная память может вовсе не соответствовать структуре физической памяти. Диспетчер памяти транслирует виртуальные адреса на физические, по которым реально хранятся данные. Поскольку далеко не всякий компьютер в состоянии выделить по 4 Гбайт физической памяти на каждый процесс, используется механизм подкачки (swapping). Когда оперативной памяти не хватает, операционная система перемещает часть содержимого памяти на диск, в файл (swap file или page file), освобождая, таким образом, физическую память для других процессов. Когда поток обращается к странице виртуальной памяти, записанной на диск, диспетчер виртуальной памяти загружает эту информацию с диска обратно в память.

Планирование потоков

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

Квант не измеряется в каких бы то ни было единицах времени, а выражается целым числом. Для каждого потока хранится текущее значение его кванта. Когда потоку выделяется квант процессорного времени, это значит, что его квант устанавливается в начальное значение. Оно зависит от операционной системы. Например, для Win2000 Professional начальное значение кванта равно 6, а для Win2000 Server - 36.

Это значение можно изменить вызвав Control Panel - > System -> Advanced -> Performance options. Значение "Applications" - как для Win2000 Professional; "Background Services" - как для Win2000 Server.

Или напрямую в ключе реестра HKLM Win32PrioritySeparation.

Всякий раз, когда возникает прерывание от таймера, из кванта потока вычитается 3, и так до тех пор, пока он не достигнет нуля. Частота срабатывания таймера зависит от аппаратной платформы. Например, для большинства однопроцессорных x86 систем он составляет 10мс, а на большинстве многопроцессорных x86 систем - 15мс.

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

Планирование в Windows осуществляется на уровне потоков, а не процессов. Это кажется понятным, так как сами процессы не выполняются, а лишь предоставляют ресурсы и контекст для выполнения потоков. Поэтому при планировании потоков, система не обращает внимания на то, какому процессу они принадлежат. Например, если процесс А имеет 10 готовых к выполнению потоков, а процесс Б - два, и все 12 потоков имеют одинаковый приоритет, каждый из потоков получит 1/12 процессорного времени.

Приоритеты

В Windows существует 32 уровня приоритета, от 0 до 31. Они группируются так: 31 - 16 уровни реального времени; 15 - 1 динамические уровни; 0 - системный уровень, зарезервированный для потока обнуления страниц (zero-page thread).

При создании процесса, ему назначается один из шести классов приоритетов:

Real time class (значение 24),

High class (значение 13),

Above normal class (значение 10),

Normal class (значение 8),

Below normal class (значение 6),

и Idle class (значение 4).

В Windows NT/2000/XP можно посмотреть приоритет процесса в Task Manager.

Above normal и Below normal появились начиная с Win2000.

Приоритет каждого потока (базовый приоритет потока) складывается из приоритета его процесса и относительного приоритета самого потока. Есть семь относительных приоритетов потоков:

Normal: такой же как и у процесса;

Above normal: +1 к приоритету процесса;

Below normal: -1;

Highest: +2;

Lowest: -2;

Time critical: устанавливает базовый приоритет потока для Real time класса в 31, для остальных классов в 15.

Idle: устанавливает базовый приоритет потока для Real time класса в 16, для остальных классов в 1

Привязка к процессорам

Если операционная система выполняется на машине, где установлено более одного процессора, то по умолчанию, поток выполняется на любом доступном процессоре. Однако в некоторых случаях, набор процессоров, на которых поток может работать, может быть ограничен. Это явление называется привязкой к процессорам (processor affinity). Можно изменить привязку к процессорам программно, через Win32-функции планирования.

Создание процессов

Создание Win32 процесса осуществляется вызовом одной из таких функций, как CreateProcess, CreateProcessAsUser (для Win NT/2000) и CreateProcessWithLogonW (начиная с Win2000) и происходит в несколько этапов:

- Открывается файл образа (EXE), который будет выполняться в процессе. Если исполняемый файл не является Win32 приложением, то ищется образ поддержки (support image) для запуска этой программы. Например, если исполняется файл с расширением.bat, запускается cmd.exe и т.п.

В WinNT/2000 для отладки программ реализовано следующее. CreateProcess, найдя исполняемый Win32 файл, ищет в SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Option раздел с именем и расширением запускаемого файла, затем ищет в нем параметр Debugger, и если строка не пуста, запускает то, что в ней написано вместо данной программы.

- Создается объект Win32 "процесс".

- Создается первичный поток (стек, контекст и объект "поток").

- Подсистема Win32 уведомляется о создании нового процесса и потока.

- Начинается выполнение первичного потока.

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

Пример создания процесса calc.exe:

#include

int main(int argc, char* argv[])

{

STARTUPINFO si;

PROCESS_INFORMATION pi;

ZeroMemory(&si, sizeof(si));

si.cb = sizeof(si);

ZeroMemory(&pi, sizeof(pi));

if(!CreateProcess(NULL, "c:/windows/calc.exe", NULL, NULL, FALSE,

0, NULL, NULL, &si, &pi))

return 0;

// Close process and thread handles.

CloseHandle(pi.hProcess);

CloseHandle(pi.hThread);

return 0;

}

Завершение процессов

Процесс завершается если:

- Входная функция первичного потока возвратила управление.

- Один из потоков процесса вызвал функцию ExitProcess.

- Поток другого процесса вызвал функцию TerminateProcess.

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

Создание потоков

Первичный поток создается автоматически при создании процесса. Остальные потоки создаются функциями CreateThread и CreateRemoteThread (только в Win NT/2000/XP).

Завершение потоков

Поток завершается если

- Функция потока возвращает управление.

- Поток самоуничтожается, вызвав ExitThread.

- Другой поток данного или стороннего процесса вызывает TerminateThread.

- Завершается процесс, содержащий данный поток.

История Mac OS X

В IT индустрии далеко не последнюю роль здесь сыграла компания Apple.

История компании Apple началась тридцать лет назад, когда два друга Стив Джобс и Стив Возняк решили основать собственную компанию по производству и выпуску компьютеров. Официально Apple была основана 1 апреля 1976 года, и именно тогда на рынке появился собранный вручную компьютер Apple Computer I - за десять месяцев было собрано и продано 175 штук по цене 666,66 долларов. По сути дела, Apple I представлял собой материнскую плату без корпуса, клавиатуры, звука и графики.

В феврале 1977 года президентом Apple становится Майкл Скотт. Существенным шагом вперед стал выпуск в апреле этого же года Apple Computer II - первый персональный компьютер с цветной графикой. Здесь была поддержка вывода на экран различных цветов, разработаны команды для работы со звуком и, следовательно, имелся встроенный динамик и клавиатура, появилась возможность оперативной смены изображения на дисплее, был блок питания и т.д. Вся эта «начинка» была упакована в специально разработанный литой пластиковый корпус, что очень выгодно отличало новый Apple от других компьютеров, имевших вид неуклюжих ящиков из листового металла. Тогда же появился известный теперь всему миру логотип - надкушенное разноцветное яблоко - созданный рекламным агентством Regis McKenna.

В мае 1979 года сотрудник Apple Джеф Раскин начал работать над новым компьютером «все в одном», который был ориентирован на рядового пользователя. Именно этот период и можно назвать началом рождения первого Macintosh.

В 1983 году Apple выпустил Lisa - первый персональный компьютер с графическим пользовательским интерфейсом, названный так в честь дочери Джобса. Но из-за довольно высокой цены и ограниченного набора приложений эта модель не получила широкого распространения. Хотя с коммерческой точки зрения Lisa была полным провалом, тем не менее, ее выпуск не прошел зря - использованная здесь операционная система Lisa 7/7 имела оконный интерфейс, буфер, который позволял передавать данные между приложениями и многое другое.

Самый первый свой Macintosh компания Apple официально представила 22 января 1984 года рекламным роликом «1984», основанным на сюжете книги Д. Оруэлла. Этот клип был назван рекламным клипом десятилетия, получил гран-при в Каннах и по сей день считается в истории рекламы одним из самых оригинальных. Это событие стало значимой вехой в истории персональных компьютеров. С появлением Macintosh в корне изменилось представление людей о компьютерах, и были заложены те основы, которые в дальнейшем стали использовать все компьютерные фирмы. В сентябре этого же года Apple начинает продавать компьютеры Macintosh 512K по цене 2495 долларов.

Шли годы и, естественно, что компьютерная отрасль тоже не стояла на месте. В течение всего времени совершенствования компьютеров Macintosh развивалась и их операционная система Mac OS (System), то есть расширялись новые возможности, менялись ее отдельные элементы и внедрялись новые технологии. Когда Mac OS была впервые представлена в 1984 году, то для того времени она являла собой совершенство современного программирования.

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

Когда перед Apple встал вопрос о разработке операционной системы нового поколения, то, взвесив все «за» и «против» компания в качестве основы для новой Mac OS решила воспользоваться разработками фирмы NeXT, которая использовала операционные системы под общим назва¬нием UNIX. Именно система OpenStep (NeXTStep) стала основой для построения новой Mac OS. Разработчикам новой Mac OS надо было обеспечить плавный переход от старой системы к новой так, чтобы пользователи могли по-прежнему работать с большим количеством уже имеющихся программ, пока не будут созданы более мощные и удобные. Так появилась новая система Mac OS X.

Структура Mac OS X

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

Mac OS X состоит из нескольких частей, вложенных одна в другую. На самом верху - новый пользовательский интерфейс Aqua. Под ним - слой поддержки прикладных программ: окружения Classic, Carbon, Cocoa, Java. Еще глубже - графика и мультимедиа: Quartz, OpenGL, QuickTime. И, наконец, в самой глубине - главный двигатель системы, ядро Darwin.

Ядро Darwin

В основе операционной системы Mac OS X находится ядро Darwin. Чтобы ускорить ввод продукта и повысить его качество компания Apple при разработке Darwin, открыла доступ к исходным кодам для всех желающих. Модули ядра Darwin были полностью открыты и доступны для рограммистов-разработчиков, вплоть до исходных текстов. Таким образом, над разработкой и реализацией Darwin трудилось огромное количество людей - свыше 100 тыс. человек.

Центральной частью Darwin является микроядро Mach 3, пришедшее в Mac OS из системы NextStep/OpenStep. Оно отвечает за самые базовые особенности поведения операционных систем более высокого уровня. Преимущество этой микроядерной архитектуры перед архитектурой с монолитным ядром состоит в том, что все базовые функции ядра выполняются в виде небольшой компоненты, которая работает в привилегированном режиме, остальные функции системы оформлены в виде подключаемых модулей и работают в обычном, пользовательском, режиме. Таким образом, значительно повышается надежность, стало довольно легко модифицировать ключевые компоненты ОС и т.д.

Забегая вперед, можно сказать, что в результате, в 2001 году после пяти лет выхода различных ядер (Rhapsody, Darwin) и получилась Mac OS X 10.0 (Cheetah) - на базе микроядра Mach, позаимствованного из NeXT OS и BSD, с системой эмуляции старых Mac OS Classic, рядом новых технологий, направленных на то, чтобы новая ОС от Apple соответствовала требованиям времени. В 2001 году вышли Mac OS X 10.1 (Puma), в 2002 году - Mac OS X 10.2 (Jaguar), в 2003 - Mac OS X 10.3 (Panther), в 2005 - Mac OS X 10.4 (Tiger). Mac OS X 10.4
1   2   3   4   5   6   7   8   9

Похожие:

Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconРеферат на тему: Сравнение операционных систем Windows и Linux
Ос – комплекс взаимосвязанных системных программ, назначение которого – организовать взаимодействие пользователя с компьютером и...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconРефераты защита авторских прав Вирусы Антивирусы, Фаерволы Корпорация...
Информатика — наука о способах получения, накоплении, хранении, преобразовании, передаче и использовании информации
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconОперационная система Linux и описание её основных дистрибутивов
Выбранная тема достаточно актуальна в ниши дни. Потому что Windows операционная система, которая не раскрывает полных возможностей...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconПрограмма по формированию навыков безопасного поведения на дорогах...
Операционная система обеспечивает удобный способ общения (интерфейс) пользователя с прикладными программами
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconУрок на тему "Как устроен компьютер"
Оборудование: компьютерный класс, операционная система Windows xp, пакет программ Microsoft Office
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconПреамбула
Соглашение об ассоциации между украиной, с одной стороны, и европейским союзом и его государствами-членами, с другой стороны beta...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной icon1. Модель устойчивого развития Республики Беларусь
Вступив в XXI век, человечество столкнулось с целым рядом сложных проблем, обусловленных, с одной стороны, противоречиями между обществом...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconИспользуемые термины и определения
Настоящие Условия регулируют отношения между Абонентом и (или) пользователем, с одной стороны, и Оператором, с другой стороны, при...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной icon№2-сд от 01. 10. 2013г., с одной стороны, и Товарищества собственников жилья «Авто-11»
Сд от 01. 10. 2013г., с одной стороны, и Товарищества собственников жилья «Авто-11», именуемое в дальнейшем заказчик, в лице председателя...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconЭкранизация мифа: трудности перевода
В статье анализируется соотношение, с одной стороны, факторов, благодаря которым можно говорить о высокой «мифогенности» кинематографа,...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconВ настоящее время в мировой экономике действуют две тенденции. С...
С одной стороны, усиливается целостность мирового хозяйства, его глобализация, что вызвано развитием экономических связей между странами,...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной icon«Новости маркетинга»: методом погружения (в маркетинг)
Такое состояние «окружающей среды» провоцирует двоякость восприятия: с одной стороны, значимость конкретного мероприятия снижается,...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconПрограмма по формированию навыков безопасного поведения на дорогах...
Программное обеспечение: Операционная система Windows xp, пакет программ Office 2003 (ms powerPoint, ms word, Paint)
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной icon2. Биоразнообразие Московской области
Наше время характеризуется бурным развитием городов и обострением проблем, связанных с взаимоотношением природы и общества. Одна...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconПроектная деятельность ученика как форма контроля алешкина Т. Л. Басарыгина М. Н
ИТ). Одной из задач, мы считаем, является поиск удобной формы контроля знаний учащихся, которые практически в совершенстве владеют...
Операционная система комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной iconФирма liechti engineering ag (Швейцария), являющаяся всемирно известным...
Программное обеспечение Turbosoft plus имеет модульную структуру и предусматривает интерфейс с другими cad/cam системами (iges для...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск