Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Многоуровневая компьютерная организация

Вычислительная машина (ВМ) – комплекс технических и программных средств для автоматизации, подготовки и решения задач пользователя.

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

Архитектура ЭВМ – логическое построение ВМ, т. е. т. о. какой машина представляется программисту.

Уровни детализации архитектуры компьютера:

1)  Уровень «чёрного ящика» – это когда ЭВМ представляется как устройство, способное хранить и обрабатывать информацию, а так же обмениваться данными со внешним миром

 

2)  Уровень общей архитектуры. ЭВМ представляется в виде четырёх составляющих:

·  центрального процессора

·  основной памяти

·  устройства ввода/вывода

·  системной шины

 

3)  Уровень архитектуры ЦП. Детализируется каждое из устройств второго уровня.

·  Арифметико-логическое устройство

·  Блок обработки чисел в формате с плавающей запятой

·  Регистры процессора, используются для краткосрочного хранения команд, данных и адресов

·  Устройство управления, обеспечивающее совместное функционирование

·  шины

 

4)  Уровень архитектуры устройства управления. Детализируются элементы третьего уровня. Например, УУ:

·  логика программной последовательности

·  регистры и дешифраторы

·  логика формирования управления

НЕ нашли? Не то? Что вы ищете?

 

Выделяют 6 уровней иерархии:

5

Язык высокого уровня

Трансляций (компилятор)

4

Уровень ассемблера

Трансляция (ассемблер)

3

Уровень операционной системы

Трансляция (ассемблер)

2

Уровень архитектуры набора команд

Интерпретация (микропрограмма)

или непосредственное выполнение

1

Микроархитектурный уровень

Аппаратное обеспечение

0

Цифровой логический уровень

На самом нижнем уровне, на цифровом логическом уровне, объекты называются вентилями. Хотя вентили состоят из аналоговых компонентов, таких как транзисторы, они могут быть точно смоделированы как цифровые устройства. У каждого вентиля есть один или несколько цифровых входов (сигналов, представляющих 0 или 1). Вентиль вычисляет простые функции этих сигналов, такие как И или ИЛИ. Каждый вентиль формируется из нескольких транзисторов. Несколько вентилей формируют 1 бит памяти, который может содержать 0 или 1. Биты памяти, объединенные в группы, например, по 16, 32 или 64, формируют регистры. Каждый регистр может содержать одно двоичное число до определенного предела. Из вентилей также может состоять сам компьютер.

Следующий уровень называется уровнем микроархитектуры. На этом уровне находятся совокупности 8 или 32 регистров, которые формируют локальную память и схему, называемую АЛУ (арифметико-логическое устройство). АЛУ выполняет простые арифметические операции. Регистры вместе с АЛУ формируют тракт данных, по которому поступают данные. Тракт данных работает следующим образом. Выбирается один или два регистра, АЛУ производит над ними какую-либо операцию, например сложения, после чего результат вновь помещается в один из этих регистров. На некоторых машинах работа тракта данных контролируется особой программой, которая называется микропрограммой. На других машинах тракт данных контролируется аппаратными средствами. На машинах, где тракт данных контролируется программным обеспечением, микропрограмма — это интерпретатор для команд на уровне 2. Микропрограмма вызывает команды из памяти и выполняет их одну за другой, используя при этом тракт данных. Например, при выполнении команды ADD она вызывается из памяти, ее операнды помещаются в регистры, АЛУ вычисляет сумму, а затем результат переправляется обратно. На компьютере с аппаратным контролем тракта данных происходит такая же процедура, но при этом нет программы, интерпретирующей команды уровня 2.

Уровень 2 мы будем называть уровнем архитектуры набора команд. Каждый производитель публикует руководство для компьютеров, которые он продает, под названием «Руководство по машинному языку X», «Принципы работы компьютера У» и т. п. Подобное руководство содержит информацию именно об этом уровне. Описываемый в нем набор машинных команд в действительности выполняется микропрограммой-интерпретатором или аппаратным обеспечением. Если производитель поставляет два интерпретатора для одной машины, он должен издать два руководства по машинному языку, отдельно для каждого интерпретатора.

Следующий уровень обычно является гибридным. Большинство команд в его языке есть также и на уровне архитектуры набора команд (команды, имеющиеся на одном из уровней, вполне могут быть представлены и на других уровнях). У этого уровня есть некоторые дополнительные особенности: новый набор команд, другая организация памяти, способность выполнять две и более программы одновременно и некоторые другие. При построении уровня 3 возможно больше вариантов, чем при построении уровней 1 и 2. Новые средства, появившиеся на уровне 3, выполняются интерпретатором, который работает на втором уровне. Этот интерпретатор был когда-то назван операционной системой. Команды уровня 3, идентичные командам уровня 2, выполняются микропрограммой или аппаратным обеспечением, но не операционной системой. Другими словами, одна часть команд уровня 3 интерпретируется операционной системой, а другая часть — микропрограммой. Вот почему этот уровень считается гибридным. Мы будем называть этот уровень уровнем операционной системы.

Между уровнями 3 и 4 есть существенная разница. Нижние три уровня задуманы не для того, чтобы с ними работал обычный программист. Они изначально ориентированы на интерпретаторы и трансляторы, поддерживающие более высокие уровни. Эти трансляторы и интерпретаторы составляются так называемыми системными программистами, которые специализируются на разработке новых виртуальных машин. Уровни с четвертого и выше предназначены для прикладных программистов, решающих конкретные задачи. Еще одно изменение, появившееся на уровне 4, — механизм поддержки более высоких уровней. Уровни 2 и 3 обычно интерпретируются, а уровни 4, 5 и выше обычно, хотя и не всегда, транслируются. Другое различие между уровнями 1, 2, 3 и уровнями 4, 5 и выше — особенность языка. Машинные языки уровней 1, 2 и 3 — цифровые. Программы, написанные на этих языках, состоят из длинных рядов цифр, которые воспринимаются компьютерами, но малопонятны для людей. Начиная с уровня 4, языки содержат слова и сокращения, понятные человеку. Уровень 4 представляет собой символическую форму одного из языков более низкого уровня. На этом уровне можно писать программы в приемлемой для человека форме. Эти программы сначала транслируются на язык уровня 1, 2 или 3, а затем интерпретируются соответствующей виртуальной или фактически существующей машиной. Программа, которая выполняет трансляцию, называется ассемблером. Уровень 5 обычно состоит из языков, разработанных для прикладных программистов. Такие языки называются языками высокого уровня. Существуют сотни языков высокого уровня. Наиболее известные среди них — С, C++, Java, LISP и Prolog. Программы, написанные на этих языках, обычно транслируются на уровень 3 или 4. Трансляторы, которые обрабатывают эти программы, называются компиляторами. Отметим, что иногда также имеет место интерпретация. Например, программы на языке Java сначала транслируются на язык, напоминающий ISA и называемый байт-кодом Java, который затем интерпретируется. В некоторых случаях уровень 5 состоит из интерпретатора для конкретной прикладной области, например символической логики. Он предусматривает данные и операции для решения задач в этой области, выраженные при помощи специальной терминологии. Таким образом, компьютер проектируется как иерархическая структура уровней, которые надстраиваются друг над другом. Каждый уровень представляет собой определенную абстракцию различных объектов и операций. Рассматривая компьютер подобным образом, мы можем не принимать во внимание ненужные нам детали и, таким образом, сделать сложный предмет более простым для понимания.

Историческое развитие архитектуры ЭВМ

Нулевое поколение – механические компьютеры ()

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

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

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

Вскоре Бэббидж разработал аналитическую машину. У неё было 4 компонента: запоминающее устройство (память), вычислительное устройство, устройство ввода (для считывания перфокарт), устройство вывода (перфоратор и печатающее устройство). Память состояла из 1000 слов по 50 десятичных разрядов; каждое из слов содержало переменные и результаты. Вычислительное устройство принимало операнды из памяти, затем выполняло операции сложения, вычитания, умножения или деления и возвращало полученный результат обратно в память. Как и разностная машина, это устройство было механическим.

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

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

язык программирования — Ada.

Говард Айкен в Гарварде упорно проектировал ручные счетные машины в рамках докторской диссертации. Работа над первым компьютером Айкена «Mark I» была закончена в 1944 го - году. Компьютер имел 72 слова по 23 десятичных разряда каждое и мог выполнить любую команду за 6 секунд. В устройствах ввода-вывода использовалась перфолента. К тому времени, как Айкен закончил работу над компьютером «Mark II», релейные компьютеры уже устарели. Началась эра электроники.

Первое поколение – электронные лампы ()

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

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

Приблизительно в это же время в МТИ был создан компьютер Whirlwind-1. Особенности компьютера: слова небольшой длины (16 бит). Он является прототипом мини-компьютера. В 1953 году IBM создала свой первый компьютер IBM-704

Второе поколение – транзисторы ()

Транзисторы были изобретены в лаборатории Bell Бардином, Браттейном и Шокли, за что в 1956 году им была присуждена Нобелевская премия. Первый компьютер на транзисторах был построен в МТИ (Массачусетский технологический институт) и назывался ТХ-1, а затем ТХ-2. Практического значения эти компьютеры не имели, но один из разработчиков, основал фирму DEC и произвели первую серийную машину на транзисторах PDP-1 (1961 г.). Эта была самая быстродействующая машина того времени. Время цикла – 5 микросекунд. Это в два раза меньше, чем у IBM-7090 (транзисторного аналога IBM-709). Стоил PDP-1 $, а IBM – миллионы. Компания DEC продала десятки компьютеров PDP и так возникла компьютерная промышленность. Один из компьютеров был отдан в МТИ, где был создан первый графический дисплей, а студенты написали первую компьютерную игру – «Война миров». Затем была создана машина PDP-8, которая была 12-разрядной, и главное нововведение – одна шина. Шина – это набор параллельно соединенных проводов для связи компонентов компьютера. Структура компьютера с общей шиной приведена на рисунке. Такая структура с тех пор используется во всех компьютерах.

В 1964 году компания CDC выпустила машину CDC-6600, которая имела производительность на порядок выше, чем IBM-7090. Высокая производительность обеспечивалась за счет того, что внутри центрального процессора находилась машина с высокой степенью параллелизма. Разработчиком этого компьютера был Сеймур Крей. Он посвятил свою жизнь созданию мощных компьютеров, которые сейчас называются суперкомпьютерами (это компьютеры CDC-6600, CDC-7600, Crey-1). Разработчики упомянутых выше компьютеров занимались в первую очередь аппаратным обеспечением, стремясь повысить его надежность, быстродействие и снизить стоимость. Следует отметить еще один проект – Burroughs B50000. Разработчики создавали компьютер с намерением программировать ее на языке Algol 60 (предшественник языка Pascal), сконструировав аппаратное обеспечение так, что бы упростить работу компилятору. Так появилась идея, что программное обеспечение тоже надо учитывать при разработке компьютера.

Третье поколение – интегральные схемы ()

Компьютеры на интегральных схемах были меньшего размера, работали быстрее, стоили дешевле. К 1964 г. Фирма IBM лидировала на рынке, но выпускаемые ей компьютеры были программно несовместимы. Компания сделала решительный шаг. Она выпустила серию компьютеров на транзисторах System 360, которые были предназначены как для научных, так и для коммерческих расчетов. System 360 содержала много нововведений. Это было семейство компьютеров с одним и тем де ассемблером. Каждая новая модель была больше и мощнее предыдущей. Идея создания семейств компьютеров вскоре стала популярной и в течении нескольких лет большинство компьютерных компаний выпустило целые серии сходных машин. Еще одно нововведение – мультипрограммирование. В памяти располагалось несколько программ и пока одна программа ждала окончания ввода-вывода, другая выполнялась.

Мир микрокомпьютеров сделал также большой шаг вперед вместе с производством компьютеров PDP-11. Во многих отношениях PDP-11 была младшим братом IBM 360 по организации компьютера и наличию в семействе машин разной стоимости и производительности.

Четвертое поколение – сверхбольшие интегральные схемы (1980-?)

Появление СБИС в 80-х годах позволило помещать на одну плату сначала десятки тысяч, а затем и миллионы транзисторов. К 80-м годам цены на компьютеры упали на столько, что приобретать компьютеры смогли не только организации, но и отдельные люди. Началась эра персональных компьютеров. Первые персональные компьютеры продавались в виде комплектов, как правило, на базе Intel 8080. Программное обеспечение пользователь писал сам. Затем появилась операционная система CP/M. Эта ОС помещалась на дискету, включала систему управления файлами и интерпретатор для выполнения пользовательских команд, которые набирались на клавиатуре. Компания IBM, лидирующая в то время на рынке компьютеров, тоже решила заняться производством персоналок. Компьютер IBM PC появился в 1981 году и стал самым покупаемым в истории.

Первая версия IBM PC была оснащена операционной системой MS-DOS, которую выпускала крошечная компания Microsoft. Эта компания разработала также собственную ОС Windows, которая работала на базе MS-DOS.

Пятое поколение – невидимые компьютеры

Пятое поколение компьютеров материализовалось весьма неожиданном виде — компьютеры начали стремительно уменьшаться. Модель Apple Newton, появившаяся в 1993 году, наглядно доказала, что компьютер можно уместить в корпусе размером с кассетный плеер. Рукописный ввод, реализованный в Newton, казалось бы, усложнил дело, но впоследствии пользовательский интерфейс подобных машин, которые теперь называются персональными электронными секретарями (Personal Digital Assistants, PDA), или просто карманными компьютерами, был усовершенствован и приобрел широкую популярность. Многие карманные компьютеры сегодня не менее мощны, чем обычные ПК двух-трехлетней давности. Но даже карманные компьютеры не стали по-настоящему революционной разработкой. Значительно большее значение придается так называемым «невидимым» компьютерам — тем, что встраиваются в бытовую технику, часы, банковские карточки и огромное количество других устройств. Процессоры этого типа предусматривают широкие функциональные возможности и не менее широкий спектр вариантов применения за весьма умеренную цену. Вопрос о том, можно ли свести эти микросхемы в одно полноценное поколение (а существуют они с 1970-х годов), остается дискуссионным. Факт в том, что они на порядок расширяют возможности бытовых и других устройств. Уже сейчас влияние невидимых компьютеров на развитие мировой промышленности очень велико, и с годами оно будет возрастать.

Нулевое поколение ()

Для полноты картины упомянем два события, произошедшие до нашей эры: пер­вые счеты — абак, изобретенные в древнем Вавилоне за 3000 лет до н. э., и их более «современный» вариант с косточками на проволоке, появившийся в Китае при­мерно за 500 лет так же до н. э.

«Механическая» эра (нулевое поколение) в эволюции ВТ связана с механичес­кими, а позже — электромеханическими вычислительными устройствами. Основ­ным элементом механических устройств было зубчатое колесо. Начиная с XX века роль базового элемента переходит к электромеханическому реле.

Первое поколение ()

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

Второе поколение()

Второе поколение характеризуется рядом достижений в элементной базе, струк­туре и программном обеспечении. Принято считать, что поводом для выделения нового поколения ВМ стали технологические изменения, и, главным образом, пе­реход от электронных ламп к полупроводниковым диодам и транзисторам со вре­менем переключения порядка 0,3 мс.

Третье поколение()

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

Четвертое поколение ()

Отсчет четвертого поколения обычно ведут с перехода на интегральные микро­схемы большой (large-scale integration, LSI) и сверхбольшой (very large-scale inte­gration, VLSI) степени интеграции. К первым относят схемы, содержащие около 1000 транзисторов на кристалле, в то время как число транзисторов на одном кри­сталле VLSI имеет порядок При таких уровнях интеграции стало возмож­ным уместить в одну микросхему не только центральный процессор, но и вычис­лительную машину (ЦП, основную память и систему ввода/вывода).

Пятое поколение()

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

Шестое поколение (1990-)

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

Процессоры и шины

Организация шин

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

•   центральным процессором и памятью;

•   центральным процессором и модулями ввода/вывода;

•   памятью и модулями ввода/вывода.

Информационные потоки, характерные для основных устройств ВМ, показаны на рис


Рис - Информационные потоки в вычислительной машине

Шина – это совокупность трактов объединяющих между собой основные устройства ВМ (ЦП, память, УВВ). Шина обеспечивает структуру взаимосвязи ВМ.

С развитием вычислительной техники менялась и структура взаимосвязей ус­тройств ВМ. На начальной стадии преобладали непосредственные связи между взаимодействующими устройствами ВМ.

Рис. - Эволюция структур взаимосвязей (ЦП — центральный процессор, ПАМ — модуль основной памяти, МВВ — модуль ввода/вывода)

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

Основные пути повышения быстродействия ЭВМ:

1. Сумматоры (параллельные)

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

Таблица истинности для сложения одноразрядных двоичных кодов.

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

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

2. Периферийные процессоры и шины

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

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

При инициализации системы на центральном процессоре ядро по линиям связи загружает на каждом из периферийных процессоров локальную операционную систему. Любой выполняемый на периферии процесс связан с процессом-спутником, принадлежащим центральному процессору (см. [Birrell 84]); когда процесс, протекающий на периферийном процессоре, вызывает системную функцию, которая нуждается в услугах исключительно центрального процессора, периферийный процесс связывается со своим спутником и запрос поступает на обработку на центральный процессор. Процесс-спутник исполняет системную функцию и посылает результаты обратно на периферийный процессор. Взаимоотношения периферийного процесса со своим спутником похожи на отношения клиента и сервера: периферийный процесс выступает клиентом своего спутника, поддерживающего функции работы с файловой системой. При этом удаленный процесс-сервер имеет только одного клиента.

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

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

3.Многопрограммный режим работы

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

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

• разделения ресурсов ЭВМ в пространстве и времени;

• автоматического управления вычислениями.

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

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

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

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

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

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

4.Внедрение в процессор нескольких АЛУ

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

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8