Apple Pascal

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 23:40, 29 октября 2017.
Apple Pascal
Apple Pascal 1.2.jpg
Разработчик Apple Computer
Написана на Pascal
Линейка ОС Apple Pascal
Состояние разработки Историческое.
Дата первого релиза 1979
Ядро (тип) монолитное ядро
Лицензия Apple Software License Agreement
Предшественник Microsoft Windows 98
Преемник Microsoft Windows XP

Apple Pascal - язык программирования и операционная система на основе UCSD Pascal system. p-System была разработана в Университете Калифорнии и пользовалась большой популярностью в 70-х и начале 80-х годов. Это была портируемая операционная система, де-факто — виртуальная машина, выполняющая байткод p-code. Самый популярный язык разработки — UCSD Pascal. В Apple его модифицировали для Apple II. Марк Аллен и Ричард Гливс, студенты UCSD, разработали интерпретатор для 6502 летом 1978 года. В 1979 году на базе этой разработки вышел Apple II Pascal. Apple Pascal выпускался пять лет. [Источник 1]

Язык программирования

UCSD Паскаль

UCSD Паскаль (UCSD - Universiti of California, San Diego) был разработан сотрудником Калифорнийского университета в Сан-Диего К. Бауэлсом Является расширением стандартного определения языка и предназначен главным образом для мини- и микро-ЭВМ.

В 1975 г. профессор Кеннет Бауэлс, работавший в Университете Калифорнии в институте изучения информации Бауэлс вместе со Стефеном Франклином и Альфредом Борком занялись созданием системы программирования и операционной системы на базе Паскаля для микрокомпьютерных архитектур.

В UCSD Pascal были внесены изменения как на уровне языка (в плане расширения и использования низкоуровневых вставок кода, в том числе и P-кода), так и на уровне P-машины.

P-код - концепция аппаратно-независимого исполняемого кода в программировании, часто его определяют как «Ассемблер для гипотетического процессора». Термин P-код был введен в начале 1970-х годов коллективом под руководством Никлауса Вирта при реализации переносимого компилятора для языка Паскаль. Стандартное промежуточное представление, в которое может быть переведена компьютерная программа автоматическими средствами. [Источник 2]Трансляция в байт-код является методом, промежуточным по эффективности между прямой интерпретацией и компиляцией в машинный код. По форме байт-код похож на машинный код, но предназначен для исполнения не реальным процессором, а виртуальной машиной. В качестве виртуальной машины обычно выступает интерпретатор соответствующего языка программирования. [Источник 3]

P-машина - виртуальная машина, предназначенная для исполнения p-кода. Этот термин применяется как в общем для всех машин, так и для более конкретных реализаций. [Источник 4]

Экран Редактора в UCSD p-System (UCSD Pascal), Apple II

Для эффективности использования Паскаля на разных компьютерах была включена дополнительная возможность генерирования машинного кода для нужной архитектуры сразу после получения P-кода. Весьма значительным усовершенствованием языка в UCSD Pascal стало введение unit-блоков, необходимых для поддержки раздельной компиляции. Впоследствии они были унаследованы в языке Turbo Pascal.

За три года команда Бауэлса разработала законченную систему, в которую вошли текстовый редактор, файловая система, а также отладчик. По сравнению с тем режимом работы, к которому уже привыкли пользователи больших машин (ввод программ и данных с перфолент и перфокарт, а также упрощенный терминальный ввод-вывод), это был огромный шаг вперед. Появился прообраз того, что сегодня называют IDE-средой (интегрированной средой разработки). UCSD Pascal стала прародительницей системы Turbo Pascal, добившейся небывалой популярности. Что касается UCSD Pascal, то эта реализация для Паскаля означала серьезный прорыв: благодаря Бауэлсу сфера применения языка значительно расширилась, что, в свою очередь, дало заметный импульс развитию микрокомпьютерной революции.

Экран Редактора в UCSD p-System (UCSD Fortran), Apple II

UCSD p-System включала компилятор с языка Паскаль в переносимый p-код и реализовывала значительное число расширений языка Паскаль, такие как модули, строки символов переменной длины, директивы трансляции, обработка ошибок ввода-вывода, обращение к файлам по именам и пр. Впоследствии основные реализации языка Паскаль основывались на этом диалекте. [Источник 5]

В составе UCSD p-System был разработан компилятор языка Паскаль UCSD Pascal, впоследствии также компилятор языка Фортран 77 UCSD Fortran.

Широкое распространение получила реализация UCSD p-System на компьютере Apple II с процессором 6502, поддерживавшаяся фирмой Apple Computer в продуктах Apple Pascal и Apple Fortran. [Источник 6]

Apple Pascal

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

Операционная система[Источник 7]

Относится к операционным системам для семейства компьютеров Apple II. Релиз системы состоялся в августе 1979 года между Apple DOS 3.2 и 3.3. Она включала в себя ряд функций, которые позже будут включены в версию 3.3, а также такие, которые позже появятся только в ProDOS.

Дисковая система и хранение

Наибольшие изменения были связаны с форматом диска и файловыми хранилищами, поскольку Apple Pascal был разработан, чтобы использовать 140 K 5.25-дюймовые дискеты .Вместо того чтобы разделить диск в 256-байтовых секторов как в DOS 3.2, Apple Паскаль разделил его на "блоки" по 512 байт каждый так, что при этом каждый блок содержит два сектора. Это было сделано для раздельного доступа к файлам для сохранения и извлечения файлов. Apple DOS файлы были сохранялись на любой доступный сектор, что ОС может найти, независимо от местоположения. Это вызывало большую фрагментацию и замедляло доступ к диску при загрузке и сохранении. В Apple Паскаль была предпринята попытка исправить это путем сохранения только для последовательных блоков на диске.

Имена файлов

Появились ограничения на именование файлов. Хотя Apple DOS разрешала имена файлов длиной до тридцати символов, и любой символ ASCII мог использоваться, Apple Pascal уменьшал длину до пятнадцати символов и допускал использование только букв, цифр и периодов. Это было сделано, чтобы создать более «чистый» взгляд на каталог диска или список файлов, поскольку более короткие имена файлов сводят к минимуму «обертывание» на экране. Поскольку на большинстве дисплеев Apple в то время было всего лишь 40 символов, ограничения на имя файла не рассматривались как большой недостаток.

Apple Pascal увеличил количество поддерживаемых типов файлов из исходных восьми, представив двухбайтовый код для указания типа. Также добавлена ​​функция отметки времени, указывающая дату и время создания файла или последнего изменения. Эти данные показывались в строке с именем файла командой CATalog. Раньше показывалось только имя файла, его базовый тип и размер. Как ни странно, функция timestamp не была включена в более позднюю версию DOS 3.3.

Комплектация

Пакет программного обеспечения Apple Pascal также включал утилиты обслуживания дисков, компилятор Pascal (установленный в стандарт UCSD ) и приличный ассемблер, дополняющий встроенный ассемблер Apple II.

Самая большая проблема с системой Apple Pascal заключалась в том, что операционная система была слишком большой для установки на один дискету. Это означало, что в системе с только флоппи-диском необходима постоянная замена дисков, чтобы что-то сделать. Для правильной работы операционной системы требуется не менее двух и, желательно, трех дисков.

Версии

В рамках Apple Pascal было выпущено четыре версии :

  1. Версия 1.0 1979 (опираясь на UCSD-Pascal II. 1)
  2. Версия 1.1 1980
  3. Версия 1.2 1983
  4. Версия 1.3 1984

Начиная с версии 1.2 только 128K были поддержаны системой. [Источник 8]

Экономическое значение

Непосредственное экономическое значение Apple Pascal ОС является довольно низким. Было мало профессиональных приложений. Известность имеет в лучшем случае, Adimens - базы данных, известные также под названием A. D. I. proFIT.

Однако он стал основой программирования Lisa и позднее Мака до версии Mac OS 9.2.2(классик). Программирование на паскале со строгим типовым испытанием было основной причиной высокой стабильности Мак ос. Мак ОС позднее стал строиться на FreeBSD и стал как все UNIX-подобные операционные системы, написанные на C и Аасемблере.[Источник 8]

Примечания

  1. История операционных систем Apple. Часть 1. Дографическая эпоха // Geektimes. Дата обновления: 22.09.2013 URL: https://geektimes.ru/post/194696/ (дата обращения: 24.10.2017).
  2. P-код // Википедия. [2017—2017]. Дата обновления: 06.10.2017. URL: http://ru.wikipedia.org/?oldid=88169464 (дата обращения: 06.10.2017).
  3. Байт-код // Википедия. [2017—2017]. Дата обновления: 14.07.2017. URL: http://ru.wikipedia.org/?oldid=86530158 (дата обращения: 14.07.2017).
  4. P-code machine. // Wikipedia, The Free Encyclopedia. [2017—2017]. Дата обновления: 26.09.2017. URL: https://en.wikipedia.org/w/index.php?title=P-code_machine&oldid=802493909 (дата обращения: 26.10.2017).
  5. Доклад «Никлаус Вирт и его языки программирования» // Южный федеральный университет. URL: http://bravit.rsu.ru/history/stud/Wirth.pdf (дата обращения: 26.10.2017).
  6. UCSD p-System // Википедия. [2017—2017]. Дата обновления: 06.10.2017. URL: http://ru.wikipedia.org/?oldid=88169472 (дата обращения: 06.10.2017).
  7. Apple Pascal // Википедия. [2017—2017]. Дата обновления: 02.04.2017. URL:https://en.wikipedia.org/w/index.php?title=Apple_Pascal&oldid=773383569 (дата обращения: 26.10.2017).
  8. 8,0 8,1 Apple Pascal // Википедия. [2017—2017]. Дата обновления: 10.05.2017. URL:https://de.wikipedia.org/w/index.php?title=Apple_Pascal&oldid=165394221 (дата обращения: 26.10.2017).