Перейти к содержанию

Тэговая архитектра

Статья из Авикипедии. Энциклопедии

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

    1. Предыстория

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

      1. RCA 601

Компьютер RCA 601 от Radio Corporation of America использовал 3-битные тэги для регистров и для каждого 24-битного полуслова. Любая инструкция могла инициировать проверку соответствия тэга, и при несовпадении возникало маскируемое прерывание. Архитектурно тэг не был связан с содержимым полуслова — эта связь устанавливалась исключительно программным обеспечением.

      1. Burroughs B5000, B5500 и B5700

В крупных системах Burroughs, таких как серия 48-битных мейнфреймов B5000, B5500 и B5700, слова не содержали поля тэгов. Тем не менее, все форматы контрольных слов включали 3-битный тэг, хотя слова с символами, инструкциями и числами с плавающей запятой его не имели. Начиная с модели B6500, тэг стал присутствовать в каждом слове.

    1. Особенности архитектуры

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

Среди известных американских систем с тэговой архитектурой можно выделить Лисп-машины, которые обладали аппаратной поддержкой в коде операций, компьютеры с управляемой данными тегированной и дескрипторной архитектурой, а также разработки Университета Райса. Как системы Burroughs, так и Лисп-машины служат примерами применения тегирования для аппаратной поддержки типов данных высокоуровневых языков программирования.

В первоначальной реализации Smalltalk младший бит каждого 16-битного слова использовался в качестве тэга. Если бит был сброшен, оборудование интерпретировало слово как выровненные данные памяти, а если установлен — как 15-битное целое число. Современная документация Intel отмечает, что младшие биты адресов памяти могут аналогично использоваться в интерпретаторных системах.

В Советском Союзе первыми применение тэговой архитектуры осуществили суперкомпьютеры серии «Эльбрус» в 1973 году.

    1. См. также
  • Защита исполняемого пространства
  • Гарвардская архитектура
    1. Примечания

(Большая часть материала написана в 1994 году или ранее)

    1. Литература

(Список литературы отсутствует)

Ссылки[править | править код]