Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мпс шпоры.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
3.62 Mб
Скачать

2. Стандартизация архитектур микропроцессоров.

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

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

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

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

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

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

Взаимодействие систем - свойство, выражающееся в спо­собности систем обмениваться информацией с автоматическим восприятием форматов и семантики данных.

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

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

Ниже рассмотрены две попытки реализации этого подхода.

1. Архитектурно независимая спецификация программ

В настоящее время в рамках международной организации ISO/EEC в комитете по микропроцессорным системам ведется под­готовка проекта стандарта ANDF на архитектурно независимый формат спецификации программ (Architecture Neutral Distribution Format). По мнению разработчика компании X/Open Company Ltd., этот формат спецификаций позволит решить проблему переноси­мости программ. Компиляция исходного кода предполагается двухэтапной. На первом этапе исходный код транслируется в обобщенные декларации интерфейсов прикладных программ (API) в совокупности с обобщенными описаниями типов данных. Факти­чески полученная оттранслированная программа представляет со­бой выражение абстрактной алгебры, определенной Architecture Neutral Distribution Format. В результате текст программы может быть подвергнут формальной проверке и преобразованию.

На втором этапе генерируется программа для конкретной архитектуры.