Jump to content

UCSD Паскаль

(Перенаправлено из P-системы UCSD )
UCSD Паскаль/p-система
Логотип версии IV
Разработчик Калифорнийский университет, Сан-Диего , SofTech , пекан
Семейство ОС с p-кодом операционные системы
Рабочее состояние Исторический
Первоначальный выпуск август 1977 года ; 47 лет назад ( 1977-08 )
Последний выпуск IV.2.2 R1.1/декабрь 1987 г .; 36 лет назад ( 1987-12 )
Доступно в Английский
Платформы Apple II , DEC PDP-11 , Intel 8080 , Zilog Z80 , MOS 6502 , Motorola 68000 , x86 , Osborne Executive , Pascal MicroEngine , TI 99/4A , BBC Micro
ядра Тип с p-кодом виртуальная машина

UCSD Pascal — это система языка программирования Pascal , работающая на UCSD p-System , портативной, в высокой степени независимой от машины операционной системе . UCSD Pascal был впервые выпущен в 1977 году. Он был разработан в Калифорнийском университете в Сан-Диего (UCSD).

p-система

[ редактировать ]

В 1977 году Институт информационных систем Калифорнийского университета в Сан-Диего (UCSD) разработал UCSD Pascal, чтобы предоставить студентам общую среду, которая могла работать на любом из доступных на тот момент микрокомпьютеров , а также на кампусных DEC PDP-11 миникомпьютерах . Операционная система стала известна как UCSD p-System.

предлагала три операционные системы IBM Для своего оригинального IBM PC . Первой была UCSD p-System, были IBM PC DOS и CP/M-86 . двумя другими [1] Поставщик SofTech Microsystems [2] подчеркнул переносимость приложений p-System с виртуальными машинами на 20 процессоров на момент выпуска IBM PC. Было предсказано, что пользователи смогут использовать приобретенные ими приложения на будущих компьютерах под управлением p-System; [3] в рекламе ее называли «Универсальной операционной системой». [4]

Журнал PC Magazine осудил UCSD p-System на IBM PC, заявив в обзоре Context MBA , написанном на этом языке, что она «просто не создает хороший код». [5] p-System не очень хорошо продавалась для IBM PC из-за отсутствия приложений и из-за того, что она была дороже, чем другие варианты. Ранее IBM предлагала UCSD p-System в качестве опции для IBM Displaywriter , 8086 специализированного текстового процессора на базе . (Встроенная операционная система Displaywriter была полностью разработана внутри компании и не была открыта для программирования конечным пользователем.)

Известные расширения стандартного Паскаля включают отдельно компилируемые модули и строковый тип. Были предоставлены некоторые встроенные функции для ускорения обработки строк (например, сканирование массива для определенного шаблона поиска); были предоставлены другие языковые расширения, позволяющие UCSD p-System быть самокомпилируемой и самостоятельно размещаемой .

UCSD Pascal был основан на архитектуре машины с p-кодом . Его вклад в создание этих первых виртуальных машин заключался в расширении p-кода от его корней в качестве промежуточного языка компилятора до полноценной среды выполнения. [ нужны разъяснения ] UCSD Pascal p-Machine был оптимизирован для новых небольших микрокомпьютеров с адресацией, ограниченной 16 битами (всего 64 КБ памяти). Джеймс Гослинг называет UCSD Pascal ключевым фактором, повлиявшим (наряду с виртуальной машиной Smalltalk ) на разработку виртуальной машины Java . [6]

UCSD p-System достигла машинной независимости, определив виртуальную машину , названную p-Machine (или псевдомашину, которую многие пользователи стали называть «Pascal-машиной», как и ОС, хотя в документации UCSD всегда использовалась «псевдо-машина»). ) со своим собственным набором команд , называемым p-кодом (или псевдокодом). Урс Амманн, студент Никлауса Вирта , первоначально представил p-код в своей докторской диссертации: [7] на основе которого была получена реализация UCSD, реализация Zurich Pascal-P. Реализация UCSD изменила реализацию Zurich на «байтовую». P-код UCSD был оптимизирован для выполнения языка программирования Паскаль . Каждой аппаратной платформе тогда требовалась только написанная для нее программа-интерпретатор p-кода для переноса всей p-системы и всех инструментов для ее работы. Более поздние версии также включали дополнительные языки, скомпилированные в базу p-кода. Например, Apple Computer предложила компилятор Fortran. [8] (написано Silicon Valley Software, Саннивейл, Калифорния), создающее p-код, который работал в версии p-системы Apple. Позже компания TeleSoft (также расположенная в Сан-Диего ) предложила раннюю среду разработки Ada , которая использовала p-код и поэтому могла работать на ряде аппаратных платформ, включая Motorola 68000 , System/370 и Pascal MicroEngine .

UCSD p-System разделяет некоторые концепции с более поздней платформой Java . Оба используют виртуальную машину, чтобы скрыть различия в операционной системе и оборудовании, и оба используют программы, написанные на этой виртуальной машине, для обеспечения кроссплатформенной поддержки. Аналогичным образом обе системы позволяют использовать виртуальную машину либо как полную операционную систему целевого компьютера, либо запускать ее в «коробке» под другой операционной системой.

Компилятор UCSD Pascal распространялся как часть портативной операционной системы p-System.

UCSD p-System возникла примерно в 1974 году как идея Кеннета Боулза из UCSD . [9] который считал, что появление новых вычислительных платформ затруднит признание новых языков программирования. Он основал UCSD Pascal на версии портативного компилятора Pascal-P2 из Цюриха. Его особенно интересовал Паскаль как язык обучения программированию. UCSD представил две функции, которые были важными улучшениями по сравнению с исходным Pascal: строки переменной длины и «единицы» независимо скомпилированного кода (идея, включенная в развивавшийся в то время Ada (язык программирования) ). Никлаус Вирт считает, что p-System и, в частности, UCSD Pascal, способствовали популяризации языка Pascal . Лишь после выпуска Turbo Pascal версия UCSD начала терять первое место среди пользователей Pascal.

Диалект Паскаля UCSD Pascal произошел от подмножества Паскаля, реализованного в Pascal-P2, которое не было разработано как полная реализация языка, а скорее как «минимальное подмножество, которое могло бы самокомпилироваться», чтобы соответствовать его функции как набор начальной загрузки для компиляторов Pascal. UCSD добавил строки из BASIC и несколько других функций, зависящих от реализации. Хотя UCSD Pascal позже получил многие другие особенности полного языка Pascal, подмножество Pascal-P2 сохранилось в других диалектах, особенно в Borland Pascal , который копировал большую часть диалекта UCSD.


UCSD Pascal используется

Существовало четыре версии механизма p-кода UCSD, каждая из которых содержала несколько версий p-System и UCSD Pascal. Пересмотр механизма p-code (т. е. p-Machine) означал изменение языка p-code, и поэтому скомпилированный код не переносим между различными версиями p-Machine. Каждая версия обозначалась ведущей римской цифрой, а версии операционной системы нумеровались как «точечный» номер, следующий за римской цифрой p-кода. Например, II.3 представлял собой третью версию p-системы, работающую на второй версии p-машины.

Оригинальная версия, никогда официально не распространявшаяся за пределами Калифорнийского университета в Сан-Диего . Однако заинтересованные пользователи свободно обменивались исходными кодами Паскаля как для версий I.3, так и для I.5. В частности, версия патча I.5a была известна как одна из самых стабильных.

Версия II

[ редактировать ]

Широко распространен, доступен на многих ранних микрокомпьютерах . Многочисленные версии включали в себя Apple II , в конечном итоге Apple Pascal , DEC PDP-11 , Intel 8080 , Zilog Z80 и MOS 6502 , Motorola 68000 и IBM PC (Версия II на ПК была ограничена одним сегментом кода 64 КБ и одним стеком 64 КБ). кучи сегмент данных ; Версия IV удалила ограничение на сегмент кода, но стоила намного дороже. [ количественно ] ).

В число участников проекта той эпохи входят доктор Кеннет Л. Боулз , Марк Аллен , Ричард Гливс, Ричард Кауфманн, Пит Лоуренс, Джоэл МакКормак , Марк Овергаард, Кит Шиллингтон, Роджер Самнер и Джон Ван Зандт.

Версия III

[ редактировать ]

Специальная версия, написанная для Western Digital для работы на их микрокомпьютере Pascal MicroEngine . Впервые включена поддержка параллельных процессов.

Версия IV

[ редактировать ]

Коммерческая версия, разработанная и продаваемая SofTech. На основе версии II; не включал изменений по сравнению с версией III. Продавались плохо из-за сочетания структуры цен, проблем с производительностью из-за интерпретатора p-кода и конкуренции с собственными операционными системами (поверх которых он часто работал). После того, как SofTech отказалась от продукта, его подхватила Pecan Systems, относительно небольшая компания, созданная из пользователей и поклонников p-System. Продажи несколько возобновились, в основном благодаря разумной структуре цен Pecan, но p-System и UCSD Pascal постепенно уступили рынок собственным операционным системам и компиляторам. Доступно для TI-99/4A, оснащенного картой p-кода, Commodore CBM 8096 , Sage IV, HP 9000 и BBC Micro со вторым процессором 6502. [10]

Дальнейшее использование

[ редактировать ]

Компьютер Corvus Systems использовал UCSD Pascal для всего пользовательского программного обеспечения. «Инновационная концепция» ОС Constellation заключалась в том, чтобы запускать Pascal (интерпретируемый или скомпилированный) и включать в руководство все распространенное программное обеспечение, чтобы пользователи могли вносить изменения по мере необходимости.

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ Уильямс, Грегг (январь 1982 г.). «Более пристальный взгляд на персональный компьютер IBM» . БАЙТ . п. 36 . Проверено 19 октября 2013 г.
  2. ^ «SOFTECH MICROSYSTEMS UCSD p-SYSTEM ВЕРСИЯ IV ДЛЯ КОМПЬЮТЕРА APPLE II» (PDF) .
  3. ^ Эдлин, Джим; Баннелл, Дэвид (февраль – март 1982 г.). «Новый персональный компьютер IBM: принимаем меры / Часть первая» . Журнал ПК . п. 42 . Проверено 20 октября 2013 г.
  4. ^ Реклама (август 1982 г.). «Этот человек разрабатывает приложения для всего рынка, включая Z-80, 8080, 8086/8088, 6502, LSI-11/PDP-11, 9900 и M68000, используя лучшее, что есть» . БАЙТ . стр. 191, 193–195 . Проверено 19 октября 2013 г.
  5. ^ Захманн, Марк С. (июнь 1983 г.). «Контекст MBA: полшага в правильном направлении» . Журнал ПК . п. 123 . Проверено 21 октября 2013 г.
  6. ^ Оллман, Эрик (1 июля 2004 г.). «Разговор с Джеймсом Гослингом» . Очередь АКМ . Ассоциация вычислительной техники . Проверено 24 декабря 2012 г.
  7. ^ Амманн, У. (1977). «О генерации кода в компиляторе PASCAL». Программное обеспечение: практика и опыт . 7 (3): 391–423. дои : 10.1002/спе.4380070311 . hdl : 20.500.11850/68668 . S2CID   2143405 .
  8. ^ «Справочное руководство по языку Apple Fortran» (PDF) .
  9. ^ Боулз, Кен (22 октября 2004 г.). «Некоторые идеи по генерации UCSD Pascal» . Архивировано из оригинала 4 марта 2016 года . Проверено 13 февраля 2011 г. UCSD Pascal Units, вероятно, повлиял на пакеты Ada
  10. ^ Махер, Джон (январь 1985 г.). «Система UCSD Pascal от Acornsoft» . Бибаг . стр. 7–10 . Проверено 2 июля 2024 г.

Дальнейшее чтение

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 794b9038b4e7a92c1dba78ad6c386a49__1722392040
URL1:https://arc.ask3.ru/arc/aa/79/49/794b9038b4e7a92c1dba78ad6c386a49.html
Заголовок, (Title) документа по адресу, URL1:
UCSD Pascal - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)