Читаем Компьютерра 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 годах

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

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

Документальная литература
1937. Трагедия Красной Армии
1937. Трагедия Красной Армии

После «разоблачения культа личности» одной из главных причин катастрофы 1941 года принято считать массовые репрессии против командного состава РККА, «обескровившие Красную Армию накануне войны». Однако в последние годы этот тезис все чаще подвергается сомнению – по мнению историков-сталинистов, «очищение» от врагов народа и заговорщиков пошло стране только на пользу: без этой жестокой, но необходимой меры у Красной Армии якобы не было шансов одолеть прежде непобедимый Вермахт.Есть ли в этих суждениях хотя бы доля истины? Что именно произошло с РККА в 1937–1938 гг.? Что спровоцировало вакханалию арестов и расстрелов? Подтверждается ли гипотеза о «военном заговоре»? Каковы были подлинные масштабы репрессий? И главное – насколько велик ущерб, нанесенный ими боеспособности Красной Армии накануне войны?В данной книге есть ответы на все эти вопросы. Этот фундаментальный труд ввел в научный оборот огромный массив рассекреченных документов из военных и чекистских архивов и впервые дал всесторонний исчерпывающий анализ сталинской «чистки» РККА. Это – первая в мире энциклопедия, посвященная трагедии Красной Армии в 1937–1938 гг. Особой заслугой автора стала публикация «Мартиролога», содержащего сведения о более чем 2000 репрессированных командирах – от маршала до лейтенанта.

Олег Федотович Сувениров , Олег Ф. Сувениров

Документальная литература / Военная история / История / Прочая документальная литература / Образование и наука / Документальное
1917: русская голгофа. Агония империи и истоки революции
1917: русская голгофа. Агония империи и истоки революции

В представленной книге крушение Российской империи и ее последнего царя впервые показано не с точки зрения политиков, писателей, революционеров, дипломатов, генералов и других образованных людей, которых в стране было меньшинство, а через призму народного, обывательского восприятия. На основе многочисленных архивных документов, журналистских материалов, хроник судебных процессов, воспоминаний, писем, газетной хроники и других источников в работе приведен анализ революции как явления, выросшего из самого мировосприятия российского общества и выражавшего его истинные побудительные мотивы.Кроме того, авторы книги дают свой ответ на несколько важнейших вопросов. В частности, когда поезд российской истории перешел на революционные рельсы? Правда ли, что в период между войнами Россия богатела и процветала? Почему единение царя с народом в августе 1914 года так быстро сменилось лютой ненавистью народа к монархии? Какую роль в революции сыграла водка? Могла ли страна в 1917 году продолжать войну? Какова была истинная роль большевиков и почему к власти в итоге пришли не депутаты, фактически свергнувшие царя, не военные, не олигархи, а именно революционеры (что в действительности случается очень редко)? Существовала ли реальная альтернатива революции в сознании общества? И когда, собственно, в России началась Гражданская война?

Дмитрий Владимирович Зубов , Дмитрий Михайлович Дегтев , Дмитрий Михайлович Дёгтев

Документальная литература / История / Образование и наука