UCSD Pascal - UCSD Pascal

UCSD Pascal/p-System
UCSD p-System.svg
Logo verze IV
Vývojář Kalifornská univerzita, San Diego , SofTech , Pecan
Rodina OS operační systémy s kódem p
Pracovní stav Historický
První vydání Srpen 1977 ; Před 44 lety ( 1977-08 )
Poslední vydání IV.2.1 R3.3 / listopad 1984 ; Před 36 lety ( 1984-11 )
K dispozici v Angličtina
Platformy Apple II , DEC PDP-11 , Zilog Z80 , MOS 6502 , Motorola 68000 , x86 , Osborne Executive , Pascal MicroEngine , TI 99/4A
Typ jádra virtuální stroj s p-kódem

UCSD Pascal je systém programovacího jazyka Pascal, který běží na UCSD p-System , přenosném, na stroji velmi nezávislém operačním systému . UCSD Pascal byl poprvé vydán v roce 1977. Byl vyvinut na Kalifornské univerzitě v San Diegu (UCSD).

UCSD Pascal a p-System

V roce 1977, University of California, San Diego (UCSD) Ústav pro informační systémy vyvinuté UCSD Pascal poskytnout studentům společné prostředí, které by mohly běžet na některou z tehdy dostupných mikropočítačů , jakož i školního areálu DEC PDP-11 minipočítačů . Operační systém se stal známý jako UCSD p-System.

Existovaly tři operační systémy, které IBM pro svůj původní IBM PC nabízela . První byl UCSD p-System, s PC DOS a CP/M-86 jako dalšími dvěma. Prodejce SofTech Microsystems kladl důraz na přenositelnost aplikací p-System s virtuálními počítači pro 20 CPU od vydání IBM PC. Předpověděla, že uživatelé budou moci používat aplikace, které si zakoupili, na budoucích počítačích se systémem p-System; Reklamy tomu říkaly „univerzální operační systém“.

PC Magazine odsoudil UCSD p-System na IBM PC a v recenzi Context MBA napsané v jazyce uvedl, že „jednoduše nevytváří dobrý kód“. Systém p-System se pro IBM PC neprodával příliš dobře, kvůli nedostatku aplikací a protože byl dražší než ostatní možnosti. Dříve IBM nabízela UCSD p -System jako možnost pro Displaywriter ,vyhrazený textový stroj na bázi 8086 (nezaměňovat sesoftwarem pro zpracování textu DisplayWrite od IBM). (Nativní operační systém Displaywritera byl vyvinut zcela interně a nebyl otevřen pro programování koncovým uživatelem.)

Významná rozšíření standardního Pascalu zahrnují samostatně kompilovatelné jednotky a typ řetězce . Byly poskytnuty některé vnitřní funkce pro urychlení zpracování řetězců (např. Skenování v poli pro konkrétní vyhledávací vzor); byla poskytnuta další jazyková rozšíření, aby umožnily UCSD p-System, aby se sám kompiloval a hostoval sám .

UCSD Pascal byl založen na architektuře stroje s p-kódem . Jeho přínosem pro tyto rané virtuální stroje bylo rozšířit p-kód od jeho kořenů jako prostřední jazyk kompilátoru do prostředí plné implementace. UCSD Pascal p-Machine byl optimalizován pro nové malé mikropočítače s adresováním omezeným na 16bitové (pouze 64 kB paměti). James Gosling uvádí UCSD Pascal jako klíčový vliv (spolu s virtuálním strojem Smalltalk ) na design virtuálního stroje Java .

UCSD p-System dosáhl nezávislosti stroje definováním virtuálního stroje , nazývaného p-Machine (nebo pseudo-stroj, kterému mnoho uživatelů začalo říkat „Pascal-machine“ jako OS-ačkoli dokumentace UCSD vždy používala „pseudo-machine“ ) s vlastní instrukční sadou nazvanou p-kód (nebo pseudokód). Urs Ammann, student Niklause Wirtha , původně ve své disertační práci představil p-kód , ze kterého byla odvozena implementace UCSD, implementace Curych Pascal-P. Implementace UCSD změnila curyšskou implementaci na „bajtově orientovanou“. UC-kód p byl optimalizován pro provádění programovacího jazyka Pascal . Každá hardwarová platforma pak potřebovala pouze program pro překlad kódu p, který byl pro ni napsán, aby přenesl celý systém p-System a všechny nástroje, které na něm mohly běžet. Pozdější verze také zahrnovaly další jazyky, které byly kompilovány do základny p-kódu. Například Apple Computer nabídl kompilátor Fortran (napsaný Silicon Valley Software, Sunnyvale California) produkující p-kód, který běžel na verzi p-systému Apple. Později TeleSoft (také se sídlem v San Diegu ) nabídl rané vývojové prostředí Ada, které používalo p-kód, a proto bylo možné běžet na řadě hardwarových platforem včetně Motorola 68000 , System/370 a Pascal MicroEngine .

UCSD p-System sdílí některé koncepty s pozdější platformou Java . Oba používají virtuální počítač ke skrytí rozdílů mezi operačním systémem a hardwarem a oba používají programy zapsané na tento virtuální počítač k poskytování podpory napříč platformami . Podobně oba systémy umožňují, aby byl virtuální počítač použit buď jako kompletní operační systém cílového počítače, nebo aby běžel v „krabici“ pod jiným operačním systémem.

Kompilátor UCSD Pascal byl distribuován jako součást přenosného operačního systému p-System.

Dějiny

UCSD p-System začal kolem roku 1974 jako myšlenka Kennetha Bowlese z UCSD , který věřil, že počet nových počítačových platforem, které v té době vycházejí, ztěžuje přijetí nových programovacích jazyků. UCSD Pascal založil na vydání přenosného kompilátoru z Curychu Pascal-P2 . Zvláště se zajímal o Pascal jako jazyk pro výuku programování. UCSD představil dvě funkce, které byly důležitými vylepšeními původního Pascalu: řetězce s proměnnou délkou a „jednotky“ nezávisle kompilovaného kódu (myšlenka zahrnutá do tehdy se vyvíjejícího programovacího jazyka Ada). Niklaus Wirth se zasloužil o popularizaci Pascalu za systém p-System a zejména UCSD Pascal . Až po vydání Turbo Pascal začala verze UCSD sklouzávat z prvního místa mezi uživateli Pascalu.

Pascalský dialekt UCSD Pascal pocházel z podmnožiny Pascal implementované v Pascal-P2, která nebyla navržena tak, aby byla úplnou implementací jazyka, ale spíše „minimální podmnožinou, která by se sama kompilovala“, aby odpovídala jeho funkci jako bootstrap kit pro kompilátory Pascal. UCSD přidal řetězce od BASIC a několik dalších funkcí závislých na implementaci. Ačkoli UCSD Pascal později získal mnoho dalších funkcí plného jazyka Pascal, podmnožina Pascal-P2 přetrvávala v jiných dialektech, zejména Borland Pascal , který kopíroval velkou část dialektu UCSD.

Verze

UCSD Pascal se používá

Byly tam čtyři verze UCSD motoru s kódem p, každý s několika revizemi p-System a UCSD Pascal. Revize modulu p-kódu (tj. P-Machine) znamenala změnu jazyka p-kódu, a proto kompilovaný kód není přenosný mezi různými verzemi p-Machine. Každá revize byla reprezentována předním římským číslem, zatímco revize operačního systému byly vyčísleny jako „tečkové“ číslo za římským číslem p-kódu. Například II.3 představoval třetí revizi systému p běžícího na druhé revizi p-stroje.

Verze I

Původní verze, nikdy oficiálně distribuována mimo Kalifornskou univerzitu v San Diegu . Zdroje Pascal pro obě verze I.3 a I.5 však byly mezi zúčastněnými uživateli volně vyměňovány. Konkrétně bylo známo, že revize patche I.5a je jednou z nejstabilnějších.

Verze II

Široce distribuovaný, dostupný na mnoha raných mikropočítačích . Řada verzí zahrnovala stroje Apple II , DEC PDP-11 , Zilog Z80 a MOS 6502 , Motorola 68000 a IBM PC (Verze II na PC byla omezena na jeden 64kódový segment kódu a jeden 64k stack/haldy datový segment ; Verze IV odstraněna limit segmentu kódu, ale stojí mnohem více).
Mezi členy projektu z této éry patří Dr. Kenneth L Bowles , Mark Allen , Richard Gleaves, Richard Kaufmann, Pete Lawrence, Joel McCormack , Mark Overgaard, Keith Shillington, Roger Sumner, John Van Zandt

Verze III

Vlastní verze napsaná pro Western Digital, která poběží na jejich mikropočítači Pascal MicroEngine . Poprvé zahrnuta podpora pro paralelní procesy.

Verze IV

Komerční verze, vyvinutá a prodávaná společností SofTech. Na základě verze II; nezahrnoval změny od verze III. Neprodávalo se dobře kvůli kombinaci jejich cenové struktury, problémům s výkonem kvůli tlumočníku p-kódu a konkurenci s nativními operačními systémy (navíc často běžely). Poté, co produkt SofTech upustil, byl převzat společností Pecan Systems, relativně malou společností tvořenou uživateli a fanoušky systému p-System. Prodeje se poněkud oživily, hlavně kvůli rozumné cenové struktuře společnosti Pecan, ale p-System a UCSD Pascal postupně ztratily trh s nativními operačními systémy a kompilátory. K dispozici pro TI-99/4A vybavené kartou s kódem p, Commodore CBM 8096 a Sage IV.

Další použití

Počítač Corvus Systems používal UCSD Pascal pro veškerý svůj uživatelský software. „Inovativní koncept“ OS Constellation měl spustit Pascal (interpretačně nebo zkompilovaný) a zahrnout do příručky veškerý běžný software, aby uživatelé mohli upravovat podle potřeby.

Viz také

Poznámky

Další čtení

externí odkazy