Начинаем снизу
Начинаем снизу
Ранее мы определили процесс как единицу работы в системе. То же самое можно сказать и о задаче. Но по сравнению с задачей, процесс в SLIC — понятие более высокого уровня, он построен над задачей. Имеется и третья, еще более значимая единица работы в OS/400, называемая заданием. Мы увидим далее, как связаны между собой эти три единицы работы в AS/400.
Термины «задача» и «процесс» появились в двух разных проектных группах System/38. Инженеры говорили о задачах, а программисты — о процессах. Многие полагали, что поскольку имена разные, то ими обозначают фундаментально разные понятия, но это не так.
В начале разработки System/38 мы пытались определить механизм, с помощью которого ОС смогла бы выполнять свою основную обязанность — распределять работы и ресурсы внутри системы. Мы хотели быть уверены, что все делаем правильно. Тогда, в начале 70-х, идея процесса как единицы работы в системе только-только начала использоваться. Но мы полагали, что она подойдет нашей ОС.
Развитие процессоров в течение 60-х годов шло довольно бурно. И все же в те дни процессоры ничего не «знали» о процессах, а «понимали» только прерывания. Прерывание — это изменение нормальной последовательности исполнения команд, вызванное либо ошибкой команды, либо чем-то за пределами исполняющейся программы, обычно вводом-выводом. Процессор запускал операцию ввода-вывода, которая затем выполнялась без его участия. Когда ввод-вывод завершался, нужно было как-то сообщить эту информацию процессору, и в качестве такого механизма использовались прерывания.
Прерывание останавливает исполняющуюся программу и передает управление обработчику прерываний, который предпринимает нужные действия. После этого управление возвращается прерванной программе. Обработчик прерываний обязан возобновить исполнение прерванной программы в точности с того же момента, на котором оно было прервано. Это означает возвращение всех внутренних регистров в состояние, предшествовавшее прерыванию. Некоторые процессоры имеют несколько наборов регистров, и при возникновении прерывания обработчик использует другой набор. Возвращение управления прерванной программе подразумевает переключение обратно на старый набор регистров.
Большинство схем обработки прерываний используют идею приоритета. Приоритет располагает прерывания в порядке их важности, от наиболее к наименее важным. При возникновении прерывания процессор переключается на другую программу только в том случае, если эта программа приоритетней той, что исполняется в данный момент. Большинство процессоров поддерживают ограниченное число приоритетов прерываний. Для поддержки процессов ПО ОС использует механизм прерываний и надстраивает над ним процессы.
В 70-х годах, работая над новым микропрограммируемым процессором для System/38, мы надеялись, что, построив структуру процессов непосредственно над аппаратурой и устранив некоторые накладные расходы прерываний, сможем достичь высокой эффективности системы. Такая структура процессов могла бы использоваться даже вводом-выводом без отдельного механизма прерываний. Это также сократило бы число схем процессора — цель, близкая и дорогая сердцу каждого разработчика. Фактически, нужно было создать структуру процессов системы и написать для ее поддержки микрокод.
Но попытки объяснить кому-либо из инженеров-аппаратчиков, что мы делаем, давали весьма интересные результаты.
Я очень хорошо помню одну такую дискуссию с техническим менеджером Реем Клотцем и его подчиненными. Я объяснял, что благодаря новой структуре мы не будем ограничены лишь несколькими уровнями прерываний. Мы сможем поддерживать сотни процессов, каждый из которых будет иметь свой уровень приоритета. При желании, даже каждое устройство ввода-вывода может иметь свой собственный приоритет, так как наша система будет поддерживать множественные процессы. Рэй прервал меня вопросом:
Вы хотите сказать, что разрабатываете мультипроцессор?
Нет, — ответил я, — мы строим систему для поддержки множественных процессов, а не множественных процессоров.
В чем же разница?
Процесс — это то же самое, что и задача, — сказал я, а затем повторил, — Мы строим систему для поддержки множественных задач, а не множественных аппаратных процессоров. После краткого молчания Рэй поинтересовался:
Но тогда, почему вы не называете их просто задачами? С этого дня мы так и стали их называть.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Глава 4. Начинаем творить
Глава 4. Начинаем творить Нет лучшего способа научиться использовать сетки, чем «засучить рукава» и приступить к делу. Настало время применить на практике все накопленные теоретические знания. В этой главе описан поиск практического решения для создания
Урок 6 Начинаем командовать браузером
Урок 6 Начинаем командовать браузером Настоящий сержант должен сегодня сделать три вещи: построить взвод, вырастить траву и посадить ефрейтора на «губу». Из утреннего приказа Предлагаю первое знакомство с браузером Internet Explorer считать состоявшимся. Перейдем к
Глава 9 Начинаем работу
Глава 9 Начинаем работу Эта глава посвящена основным приемам работы в программе Excel, редактированию и форматированию ячеек, а также созданию диаграмм.• Редактирование ячеек• Ввод формул• Работа с диапазонами ячеек• Автоматический ввод значений• Форматирование
Глава 13 Начинаем работу со справочниками
Глава 13 Начинаем работу со справочниками При заполнении документов, как мы вскоре увидим, часто используются данные, определенные заранее и являющиеся основой информационной базы. Можно выделить несколько типов справочной информации: данные, хранящиеся в справочниках,
0. Начинаем
0. Начинаем Когда вы пишете программу для компьютера, вы должны «говорить» на языке, который ваш компьютер понимает: на языке программирования. Есть много, очень много разных языков, и многие из них – превосходные. В этом учебнике я выбрал для использования мой любимый
Глава 5. Начинаем взлетать. Концепция развития программиста
Глава 5. Начинаем взлетать. Концепция развития программиста Есть такое выражение «Талантливый человек - талантлив во всем». Действительно, успешным людям часто сопутствует удача, за какое бы дело они не взялись. В чем же их секрет? Секрет в том, что они живут гармоничной
Начинаем заново?
Начинаем заново? Четыре года назад, в Главе 14, я обещал вам, что наши дни повторного изобретения колеса и написания одних и тех же программ на каждом уроке, прошли и что с этого момента мы будем придерживаться более завершенных программ, к которым мы должны просто добавлять
Начинаем...
Начинаем... Да, это именно та книга, которая необходима для того, чтобы начать освоение VBA (аббревиатура от Visual Basic for Applications, что означает Visual Basic для приложений).Благодаря этой книге вы узнаете об основных принципах программирования в VBA и получите необходимые навыки для
1. Начинаем
1. Начинаем В этой главе представлены основные элементы языка: встроенные типы данных, определения именованных объектов, выражений и операторов, определение и использование именованных функций. Мы посмотрим на минимальную законченную С++ программу, вкратце коснемся
Глава 3 Начинаем работу в ArCon
Глава 3 Начинаем работу в ArCon • Проект ArCon• Создание нового проектаПредыдущие две главы носили обзорный характер. Главное, что вы должны были получить после их прочтения, – это хорошее представление о возможностях и общих принципах работы в программе ArCon. Сейчас, полагаю,
Глава 1 Интернет — начинаем работать
Глава 1 Интернет — начинаем работать Запуск обозревателя Internet Explorer Для запуска обозревателя нужно щелкнуть по его значку — это симпатичная голубая буква е, вокруг которой что-то быстро вращается по орбите. Значок IE можно найти:? в панели быстрого запуска, на панели задач
Глава 3 Начинаем «вскрытие»
Глава 3 Начинаем «вскрытие» А вместо сердца – пламенный мотор. Из песенки о революционерах-киборгах И снова здравствуйте! Это на тот случай, если первая часть показалась вам слишком простой и вы начали читать книгу с данной главы.Специально для таких читателей озвучим
НАЧИНАЕМ РАБОТУ С WINDOWS
НАЧИНАЕМ РАБОТУ С WINDOWS Наконец-то вы удобно угнездились на водительском месте в роскошной и красивой (хотя до ужаса капризной) спортивной машине под названием Windows. И вам нужно срочно выяснить две вещи: во-первых, как ею управлять, и, во-вторых, куда на ней можно поехать? А