Читаем Компьютерра PDA N142 (22.10.2011-28.10.2011) полностью

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

Процессоры с традиционной архитектурой хранят инструкции и данные в регистрах

Фактически процессор классической архитектуры (неважно, CISC или RISC) общается только с этими регистрами, знать не зная о том, что же происходит в памяти. Конечно же, у такой схемы обработки есть варианты. Например, регистры могут быть заменены или дополнены аппаратно реализованным пулом в виде очереди FIFO или же специальной кэш-памятью. Эти изменения и дополнения позволяют модулю вызова команды осуществлять предварительную выборку сразу нескольких инструкций, подыгрывая суперскалярности исполнительного устройства. Однако регистровая суть работы процессора при этом не меняется.

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

Одним словом, стековая идиллия программ, которую создаёт компилятор, сталкивается с суровыми регистровыми буднями реальных процессорных архитектур. В этом не было бы ничего страшного, если бы не вызовы процедур.

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

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

Именно об этой нестыковке и задумался коллектив исследователей (в его состав входил и Деннис Ритчи, и другие сотрудники Bell Labs), разрабатывая С-машину – гипотетическую безрегистровую процессорную архитектуру, оптимизированную для выполнения С-программ со множеством процедур и стековой организацией хранения данных.

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

Приступая к разработке С-машины, исследователи провели трассировку десятков С-программ

Согласно идеологии С-машины, инструкции программы получали доступ к необходимым им данным так, как это задумывалось компилятором языка С, то есть непосредственно обращаясь к находящимся в памяти стекам программы и её процедур и, например, таким элементам, как массивы. Такое неэффективное с точки зрения скорости доступа решение на практике оказывалось более продуктивным, чем постоянное перезаписывание более шустрых регистров.

В основе архитектуры С-машины лежит использование специальной кэш-памяти для отображения в ней стека программы

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

Проект С-машины стал активно развиваться в начале восьмидесятых годов прошлого столетия. Возможно, он так и остался бы эдакой игрой разума, если бы не "железные" амбиции компании AT&T, в недрах которой появился язык С и операционная система Unix.

Архитектура CRISP. С-машина в "железном" исполнении

Перейти на страницу:

Все книги серии Компьютерра PDA

Компьютерра PDA 03.04.2010-09.04.2010
Компьютерра PDA 03.04.2010-09.04.2010

ОГЛАВЛЕНИЕСергей Голубицкий: Голубятня: Светлее бледногоВасилий Щепетнев: Василий Щепетнёв: Цена верностиБерд Киви: Кивино гнездо: И биометрия на всех Николай Маслухин: Промзона: проект "Google-конверты" и диван-саквояжЮрий Ревич: Существуют ли государственные базы данных?Игорь Терехов: Flash посадили в "песочницу" ChromeМихаил Карпов: iPad: очереди, большие люди и хакерыЮрий Ильин: На что живёт Opera MiniВаннах Михаил: Кафедра Ваннаха: Информационные технологии и эскапизм Игорь Осколков: Что вычисляют российские суперкомпьютерыМихаил Карпов: Анатолий Вассерман: Пирамида МаслоуАндрей Письменный: Машинное обучение улучшило "Яндекс"Игорь Терехов: Проблемный BuzzВасилий Щепетнев: Василий Щепетнёв: Опоздавший к присягеИгорь Терехов: "Макхост" ушёл в оффлайнИрина Матюшонок: Почему Google отстаёт от "Яндекса"Андрей Письменный: Первые iPad, попавшие в Россию, скупают втридорогаОлег Парамонов: Первый взгляд на iPadНиколай Маслухин: Промзона: Светящиеся деньгиМихаил Карпов: Мартовский приз ReaditorialВаннах Михаил: Кафедра Ваннаха: Российская DARPA и гипотеза ФишераВиталий Губский: Надёжное железо (история и сегодняшние факты)Анатолий Вассерман: Досудебное помилованиеКрестников Евгений: Геоконтекстная реклама добралась до РоссииМихаил Карпов: В iPhone OS 4 появится многозадачностьБерд Киви: Кивино гнездо: Теневая сторона сетиНиколай Маслухин: Промзона: ножная мышьИгорь Осколков: Lenovo Thinkpad X100e – компактный ноутбук для бизнесаВасилий Щепетнев: Василий Щепетнёв: Власть и магияИгорь Терехов: Игровым приставкам настанет конецМихаил Карпов: Через три года мемристоры заменят транзисторы

Журнал «Компьютерра» , Компьютерра

Документальная литература / Прочая компьютерная литература / Прочая документальная литература / Документальное / Книги по IT
Компьютерра PDA 20.03.2010-26.03.2010
Компьютерра PDA 20.03.2010-26.03.2010

ОГЛАВЛЕНИЕВаннах Михаил: Кафедра Ваннаха: Пороки, ракеты, компьютеры Берд Киви: Кивино гнездо: Сеть на колёсахМихаил Карпов: Февральский призНиколай Маслухин: Промзона: Вязаный твиттер и дизайнерские светофорыМихаил Карпов: Samsung Forum 2010: робопылесосы NavibotАндрей Письменный: Opera наверстала отставание от других браузеровДмитрий Плесконос Развитие Интернета - один из приоритетовСергей Голубицкий: Голубятня: Непростой мальчик РобертЕвгений Крестников: Электронных денег станет больше, если их не запретятАнатолий Вассерман: Газоносные сланцыИгорь Терехов: Прощание с PalmЕвгений: Возраст честностиМихаил Карпов: Samsung Forum 2010: 3D-телевизорыВасилий Щепетнев: Василий Щепетнёв: Спецназ Леонардо в боюОлег Нечай: Ловушка номер 3D: о чём молчит рекламаЛеваков Владимир: Программы лояльности: чего не хватает российскому IT-рынку?Олег Данилов: Сколково открытий чудныхВаннах Михаил: Кафедра Ваннаха: Свобода и буржуазияРоман Георгиев: Грозовой перевал: кризис 3D-отрасли в РоссииМихаил Карпов: У новой приставки Nintendo будет стереоэкранЮрий Ревич: Политически корректные фильтрыАртём Алексеев: Виртуальная реальность нашей повседневностиИгорь Осколков: Arion рендерит световые волны параллельноОлег Нечай: Игрушечное кино: на что годятся пикопроекторыАндрей Письменный: Тег video делает Firefox устаревшим браузеромВасилий Щепетнев: Василий Щепетнёв: След жирафаАлександр Милицкий: УФАС - не указ?Анатолий Вассерман: Индивидуальный и массовый террорПоликарпов, Константин: Туманный экран PolivizorИгорь Терехов: Основатели Skype подались в инвесторыИгорь Осколков: Обзор интернет-устройства Viliv S5Михаил Карпов: Несколько вопросов по следам конференции MIXАндрей Письменный: CloudConf 2010: облачные вычисления в РоссииСергей Голубицкий: Голубятня: Миша, кока, деффкиИгорь Терехов: "Счастливый фермер" неплохо зарабатываетВаннах Михаил: Кафедра Ваннаха: Параллелизм в большом и малом мирахМихаил Карпов: The Beatles Rock Band: взгляд музыкантаРоман Георгиев: Грозовой перевал: российская 3D-анимацияЕвгений Крестников: В. Достов: "Когда мы защищаемся неизвестно от чего, платит всегда покупатель"Олег Нечай: Ёмкостные против резистивныхИгорь Терехов: Технологии будущего по версии Microsoft

Журнал «Компьютерра» , Компьютерра

Документальная литература / Прочая компьютерная литература / Прочая документальная литература / Документальное / Книги по IT
Компьютерра PDA N113 (28.05.2011-03.06.2011)
Компьютерра PDA N113 (28.05.2011-03.06.2011)

ОГЛАВЛЕНИЕСергей Голубицкий: Голубятня: Начало продажВасилий Щепетнев: Василий Щепетнёв: Переход на летние деньгиЕвгений Крестников: Первый взгляд на Fedora Linux 15Евгений Лебеденко, Mobi.ru: Технология Gyricon: забытый электронный папирусВаннах Михаил: Кафедра Ваннаха: Цифровая шарага китайского образцаОлег Нечай: Путеводитель по настольным процессорам AMD (часть 1)Игорь Осколков: Обзор ноутбука Eurocom W860CU CougarВасилий Щепетнев: Василий Щепетнёв: Приказано иметь честьДмитрий Шабанов: Отпечатки пальцев и отпечатки мозгаСергей Голубицкий: Голубятня: Юбилейное откровениеКиви Берд: Кивино гнездо: На звон БитМонетВаннах Михаил: Кафедра Ваннаха: ТМО и парад геевОлег Нечай: Путеводитель по настольным процессорам AMD (часть 2)Берд Киви: На звон БитМонет (часть 2)Василий Щепетнев: Василий Щепетнёв: Просить и не проситьКиви Берд: Кивино гнездо: Зачем вам думать?

Журнал «Компьютерра» , Компьютерра

Документальная литература / Прочая компьютерная литература / Прочая документальная литература / Документальное / Книги по IT

Похожие книги

Хрущёвская слякоть. Советская держава в 1953–1964 годах
Хрущёвская слякоть. Советская держава в 1953–1964 годах

Когда мы слышим о каком-то государстве, память сразу рисует образ действующего либо бывшего главы. Так устроено человеческое общество: руководитель страны — гарант благосостояния нации, первейшая опора и последняя надежда. Вот почему о правителях России и верховных деятелях СССР известно так много.Никита Сергеевич Хрущёв — редкая тёмная лошадка в этом ряду. Кто он — недалёкий простак, жадный до власти выскочка или бездарный руководитель? Как получил и удерживал власть при столь чудовищных ошибках в руководстве страной? Что оставил потомкам, кроме общеизвестных многоэтажных домов и эпопеи с кукурузой?В книге приводятся малоизвестные факты об экономических экспериментах, зигзагах внешней политики, насаждаемых доктринах и ситуациях времён Хрущёва. Спорные постановления, освоение целины, передача Крыма Украине, реабилитация пособников фашизма, пресмыкательство перед Западом… Обострение старых и возникновение новых проблем напоминали буйный рост кукурузы. Что это — амбиции, нелепость или вредительство?Автор знакомит читателя с неожиданными архивными сведениями и другими исследовательскими находками. Издание отличают скрупулёзное изучение материала, вдумчивый подход и серьёзный анализ исторического контекста.Книга посвящена переломному десятилетию советской эпохи и освещает тогдашние проблемы, подковёрную борьбу во власти, принимаемые решения, а главное, историю смены идеологии партии: отказ от сталинского курса и ленинских принципов, дискредитации Сталина и его идей, травли сторонников и последователей. Рекомендуется к ознакомлению всем, кто родился в СССР, и их детям.

Евгений Юрьевич Спицын

Документальная литература
Подготовка разведчика
Подготовка разведчика

Пособие по подготовке военных разведчиков, действующих за линией фронта, в глубоком тылу врага, впервые выходит в открытой печати на русском языке. Его авторы, в прошлом бойцы спецназа ГРУ, дают здесь рекомендации, необходимые для начального обучения, военнослужащих в подразделениях глубинной (силовой) разведки. Авторы освещают вопросы психофизической и тактической подготовки разведчиков, следопытства и маскировки, оборудования укрытий и преодоления минно-взрывных заграждений, рукопашного боя, выживания в экстремальных природных условиях, а также многое другое. Это пособие принесет пользу сержантам, прапорщикам и офицерам специальных войск, членам военно-спортивных и военно-патриотических клубов, учащимся школ выживания, туристам, охотникам, рыбакам и вообще всем, кто хочет научиться преодолевать любые опасности.

Анатолий Ефимович Тарас , Федор Дмитриевич Заруцкий

Документальная литература / Справочники / Прочая документальная литература / Документальное / Словари и Энциклопедии