Thoth (operační systém) - Thoth (operating system)
Vývojář | University of Waterloo |
---|---|
Napsáno | Eh, Zed, montážní jazyk |
Rodina OS | RTOS |
Pracovní stav | Přerušeno |
První vydání | Říjen 1976 |
Marketingový cíl | Výzkum |
K dispozici v | Angličtina |
Metoda aktualizace | Překompilování |
Platformy | Honeywell 6050 Data General Nova 2 Texas Instruments TI990 / 10 |
Jádro typ | Microkernel |
Uspěl | Port, Verex, Harmonie, PROTI |
Thoth je reálný čas, předávání zpráv operační systém (OS) vyvinutý na University of Waterloo v Waterloo, Ontario Kanada.
Dějiny
Thoth byl vyvinut na University of Waterloo v Waterloo, Ontario, Kanada. Učební plán ve Waterloo zahrnuje a Operační systémy v reálném čase kurz a přidružená „Train lab“, kde musí studenti vyvinout a operační systém v reálném čase (RTOS) k ovládání modelové trati s více vlaky.[1][2][3]
V roce 1972 B programovací jazyk, derivát BCPL, byl přiveden do Waterloo uživatelem Stephen C. Johnson zatímco na volno z Bell Labs.[4] Nový jazyk odvozený od B, pojmenovaný Eh, byl vyvinut ve Waterloo. Thoth byl psán původně v Eh s některými montážní jazyk.[5][6]
Počáteční vývoj Thoth nastal na a Honeywell 6050 počítač.[7] Poprvé byl spuštěn na Data General Nova 2 v květnu 1976 a byl další přeneseno do a Texas Instruments TI990 / 10 v srpnu 1976.[7][5]
V říjnu 1976 zveřejnila University of Waterloo diplomovou práci Laurence S. Melena nazvanou „Portable Real-Time Executive, Thoth“.[8]
Eh byl později upgradován, částečně s přidáním typy dat a přejmenován Zed. Thoth byl poté přepsán do Zeda.[9][10][11][12][13]
Jedním z prvních hlavních vývojářů Thoth byl David Cheriton. Cheriton by pokračoval ve vývoji Verexu jádro a Systém V OS; oba ovlivněni Thothem. Dalším časným vývojářem byl Michael Malcolm, který později založil Waterloo Microsystems, Network Appliances, Inc., Blue Coat Systems a Kaliedescape, o nichž se předpokládá, že některé operační systémy byly odvozeny nebo ovlivněny Thothem.
Některé práce popisují DEMOS jako inspiraci pro Thotha.[14] Jak již citoval Cheriton Per Brinch Hansen je RC 4000, poté společně uvedli Thoth, DEMOS a Accent jako pozdější vývoj.[15] Zahrnuty byly i další vlivy na vývoj Thotha Multics, Obecné údaje RTOS, Honeywell GCLS a Unix.[5] Pozdější odkazy uvádějí Thoth jako původní implementaci jeho konkrétního použití synchronního předávání zpráv a víceprocesové programové struktury, které byly následně použity jinými projekty.[16]:2
Práce na Thothu skončily kolem roku 1982.[17]
Funkce
Thoth byl vyvinut za účelem splnění čtyř cílů:[7]
- Snadno přenosný na jiný hardware[3]
- Programy běží jako sada nenákladných, spolupracujících souběžně procesy s efektivní meziprocesní komunikace (IPC)[5]
- Vhodné pro použití v reálném čase, pokud jde o reakci systému na externí události
- Adaptabilní a škálovatelné pro širokou škálu použití v reálném čase
Thoth vystavuje totéž abstraktní stroj na aplikační software, bez ohledu na podklad fyzický stroj.[5][18] Tento abstraktní stroj byl definován s určitými minimálními požadavky, takže splnění těchto požadavků umožnilo zahrnutí daného počítače do Thoth doména potenciálních cílů portu Thoth.
Procesy běžící pod Thothem lze seskupit do „Týmů“. Všechny procesy v týmu sdílejí společný adresní prostor a mohou sdílet data.[19][7] To je podobné konceptům „lehkých procesů“ nebo vláken u jiných systémů.[20] Procesy, které nejsou členy stejného týmu, komunikují pomocí IPhot společnosti Thoth.
Meziprocesová komunikace v Thothu se primárně provádí pomocí synchronního předávání zpráv.[7] Tento přístup výrazně zjednodušil řazení zpráv.[21]
Ačkoli tento termín nebyl aktuální, když byly psány původní práce, Thoth byl nazýván a mikrokernel.[22][20][23]
Thothova synchronní zpráva předávající IPC se propůjčila aplikaci antropomorfního programovacího modelu a stavěla na práci Carl Hewitt je herec model a Pokec.[17]
Dědictví
Operační systém Thoth poskytl buď základ, nebo inspiraci pro několik pozdějších projektů, z nichž některé jsou uvedeny níže.
Akademický
- MicroNet distribuován souborový server systém na University of Waterloo běžel na operačním systému s názvem WatSys, který byl podobný Thoth a Port.[24] WatSys debutoval v roce 1981.[25]
- The Kanadská národní rada pro výzkum byl domovem vývoje Harmony operační systém, derivát Thotha orientovaný na řízení robota v reálném čase.[26]
- Cheriton zaujal pozici u University of British Columbia, kde se podílel na vývoji Verexu a Distribuovaného Verexu s využitím mnoha myšlenek, které dříve prozkoumal v Thothu.[12][27]
- Cheriton později se přestěhoval do Stanfordská Univerzita v USA, kde vyvinul Systém V, která pokračovala v budování na dřívější práci s Thothem.[15][28][29][30]
- Architektura systému Sylvan Multiprocessing zahrnovala koprocesor, který implementoval Thothovy synchronní zprávy předávající primitiva (a Adovo rozšířené setkání) v hardwaru.[16][31]
- Thoth a jeho poselství procházející IPC byly použity k podpoře víceprocesního programu pro malování, který využíval antropomorfní programovací model.[32][33]
- Sémantika předávání Thothovy zprávy byla součástí experimentální verze paralelního zpracování počítačový algebraický systém (CAS) Javor.[34]
- Distribuované prostředí pro provádění a komunikaci procesů (PEACE) bylo vyvinuto pro vysoce výkonné aplikace. Článek cituje Thotha jako „hlavní základ“ projektu.[35]
- Výkonný pracovník systému Eindhoven pro více procesorů (EMPS) klade důraz na efektivitu. Thoth poskytl inspiraci pro návrh jádra EMPS.[36]
- Experimentální prostředí rozhraní člověk-počítač s názvem Room systém bylo postaveno na Waterloo Port, který byl odvozen od Thoth a který používal jeho IPC techniky. Místnost odkazuje na dřívější Thothovy práce.[37]
- Webový server Flash, výzkumný projekt s důrazem na efektivitu a přenositelnost, byl považován za metodu Thoth ve své metodě strukturování více procesů a konceptu procesních týmů komunikujících prostřednictvím předávání zpráv.[38]
Komerční
- Gordon Bell a Dan Dodge, vývojáři QNX operační systém pro předávání zpráv v reálném čase, oba pracovali s Thothem, zatímco byli studenty ve Waterloo.[39][40][41][42]
- AT&T Systém 75 Kancelářský komunikační systém byl řízen Oryx jádro a Pecos soubor základních systémových procesů, společně označovaných jako Oryx / Pecos. Využilo nápady z Thoth, DEMOS a interního projektu AT&T.[43]
- Komerční Waterloo Port síťový operační systém byl odvozen od Thoth.[44] Přidružený jazyk Zed byl upgradován, aby se stal jazykem PORT pro Waterloo Port.[45][46]
- Společnost Hayes Microcomputer Products získala společnost Waterloo Microsystems a rebrandovala a upgradovala produkt Waterloo Port, aby vytvořila LANstep.[47][48]
- The Auspex skladovací společnost vyrobila Funkční jádro pro více procesů (FMK), který využíval koncepty identifikované jako ty, které byly poprvé vyvinuty v Thothu.[49] Na rozdíl od V-System a Waterloo Port neměl FMK žádnou správu paměti.
- Rané verze Network Appliance, Inc. Operační systém úložného zařízení byl popsán jako velmi podobný Thothu.[50] OS NetApp napsal David Hitz, který předtím byl v Auspexu.
- V roce 1996 společnost CacheFlow vydala webovou akcelerační zařízení CacheOS, který byl založen na Thoth.[51] V roce 2001 byl CacheFlow přejmenován Blue Coat Systems a s přidáním modulu zásad se CacheOS stal Zabezpečený operační systém brány (SGOS).
Reference
- ^ „Programování v reálném čase CS 452“. University of Waterloo, Cheriton School of Computer Science.
- ^ „CS 452/652 - Programování v reálném čase“. University of Waterloo, Computing Science Computing Facility.
- ^ A b Malcolm, Michael (24. března 2009). „2009 24. března: Řada reproduktorů Deloitte“. University of Waterloo, Institute of Computer Research.
- ^ Ritchie, Dennis M. (Duben 1993). Vývoj jazyka C. (PDF). Sdružení pro výpočetní techniku.
- ^ A b C d E Cheriton, David R .; Malcolm, Michael A .; Melen, Lawrence S .; Sager, Gary R. (březen 1978). „Thoth, přenosný operační systém v reálném čase (revidovaný)“ (PDF). Oddělení informatiky na University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Braga, Reinaldo S. C. (listopad 1976). "Eh referenční příručka" (PDF). Oddělení informatiky na University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ A b C d E Cheriton, David R .; Malcolm, Michael A .; Melen, Lawrence S .; Sager, Gary R. (únor 1979). „Thoth, přenosný operační systém v reálném čase“ (PDF). Komunikace ACM. 22 (2): 105–115. doi:10.1145/359060.359074. S2CID 14350500.
- ^ Melen, Laurence S. (říjen 1976). „Přenosný manažer v reálném čase, Thoth“. Katedra informatiky, University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Lion, John (říjen 1993). „Dopis z New Jersey - leden 1979“. Zpravodaj australské skupiny uživatelů Unixu. Sv. 14 č. 5. AUUG Inc. str. 48–51.
- ^ "Databáze programovacích jazyků: Z". epocalc. 2012.
- ^ Bonkowski, G. Bert; Gentleman, W. Morven; Malcolm, Michael A. (květen 1979). „Porting the Zed Compiler“ (PDF). Oddělení informatiky na University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ A b Lockhart, Thomas Wayne (listopad 1979). „Návrh ověřitelného jádra operačního systému“. University of British Columbia. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Kinnersley, Bill (23. ledna 1995). „Seznam jazyků: Verze 2.4“. ckw.phys.ncku.edu.tw.
- ^ Hutchinson, Norman A. (1987). „Emerald: Objektově orientovaný jazyk pro distribuované programování“ (PDF). University of Washington. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ A b Cheriton, David R. (březen 1988). „Distribuovaný systém V“ (PDF). Komunikace ACM. 31 (3): 314–333. doi:10.1145/42392.42400. S2CID 7523994.
- ^ A b Burkowski, Forbes J .; Clarke, Charles L. A .; Cowan, S. Crispin; Vreugdenhil, G. J. (únor 1995). „Vyhodnocení výkonu víceprocesorové architektury Sylvan“. University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ A b Booth, Kellogg S .; Schaeffer, Jonathan; Gentleman, W. Morven (únor 1984). „Antropomorfní programování“ (PDF). Oddělení informatiky na University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Chubb, Lucy (1987). „Víceprocesní operační systém pro 16bitové mikropočítače“. University of New South Sales, School of Electrical Engineering and Computer Science. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Comer, Douglas E .; Munson, Steven B (1988). „Efektivní meziprocesová komunikace využívající sdílenou paměť“. Purdue University Katedra výpočetní techniky. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ A b O'Sullivan, Bryan (13. srpna 1996). „Odpovědi na často kladené otázky pro comp.os.research: Část 1 ze 3 - 2.2.3. Historie vláken“. University at Albany Department of Computer Science.
- ^ Fleisch, Brett D .; Co, Mark Allan A. (duben 1997). „Workplace Microkernel and OS: A Case Study“. Ústav výpočetní techniky, University of California. CiteSeerX 10.1.1.46.7315. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Appavoo, Jonathane. „Optimalizace výzkumu softwarových operačních systémů s více procesory“ (PDF). Katedra informatiky na Bostonské univerzitě. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Depoutovitch, Alexandre (2011). „Otherworld - šance, že aplikace přežijí selhání jádra operačního systému“ (PDF). University of Toronto Graduate Department of Computer Science. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Cowan, D. D .; Boswell, F. D .; Grove, T. R. (prosinec 1984). „Distribuovaný souborový server pro síť osobního počítače“ (PDF). Oddělení počítačových systémů University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Fonds, Wes Graham (5. srpna 1983). „Chronologie: 1980: Desetiletí expanze - 1981“. University of Waterloo - Cheriton School of Computer Science.
- ^ Tanner, P. P .; Buxton, W. (1985). Některé problémy ve vývoji budoucího systému správy uživatelského rozhraní (UIMS). Systémy správy uživatelského rozhraní. Berlín. str. 67–79.
- ^ Boyle, Patrick David (červen 1982). „Návrh distribuovaného jádra pro víceprocesorový systém“. University of British Columbia Department of Computer Science. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Tevanian Jr., Avadis; Rashid, Richard F .; Golub, David B .; Black, David L .; Cooper, Eric; Young, Michael W. (srpen 1987). „Mach Threads and the Unix Kernel: The Battle for Control“. Katedra výpočetní techniky Carnegie-Mellon University. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Chakraborty, Pinaki (2010). „Výzkumné operační systémy - široký průzkum“ (PDF). GESJ: Informatika a telekomunikace (3): 147–160. ISSN 1512-1232.
- ^ Bin Shafaat, Ahmed; Xu, Shuxiang (26. prosince 2017). „Srovnávací studie technologií vyvinutých z hlediska distribuovaných operačních systémů“ (PDF). AMSE Journals: AMSE IIETA Publication: 2017-Series: Advances B. 60 (3): 613–629.
- ^ Burkowski, F. J .; Cormack, G. V .; Dyment, J. D .; Pachl, J. K. (28. února 1987). "Architektura založená na zprávách pro vysokou souběžnost". V Heath, Michael T. (ed.). Hypercube Multiprocesory 1986. Společnost pro průmyslovou a aplikovanou matematiku, USA, str. 27–37. ISBN 978-0898712094.
- ^ Beach, Richard J .; Beatty, John C .; Booth, Kellogg S .; Plebon, Darlene A .; Fiume, Eugene L. (červenec 1982). „Zpráva je médium: Víceprocesové strukturování interaktivního programu malování“. Počítačová grafika. Sv. 16 č. 3. Sdružení pro výpočetní techniku. 277–287. doi:10.1145/965145.801292.
- ^ Plebon, Darlene A .; Booth, Kellogg S. (1982). „Interaktivní systém vytváření obrázků“ (PDF). University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Watt, Stephen Michael (1985). „Ohraničený paralelismus v počítačové algebře“ (PDF). University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Schröder, W. „Prostředí distribuovaného provádění procesů a komunikace pro vysoce výkonné aplikační systémy“ (PDF). Technische Universität Berlin. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ van Dijk, G. J. W. (1. ledna 1993). „Návrh výkonného multiprocesoru EMPS pro distribuované výpočty“ (PDF). Technische Universiteit Eindhoven. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Chan, Patrick P. (červenec 1984). „Učení v návrhu uživatelského rozhraní: model místnosti“ (PDF). Oddělení informatiky na University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Pai, Vivek S .; Druschel, Peter; Zwaenepoel, Willy. „Flash: Efektivní a přenosný webový server“ (PDF). Rice University Katedra výpočetní techniky. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ „Vestavěné aplikace - technologie pro skutečný svět“. Projekt infraNET. 29. května 1998.
- ^ Morris, James B. (únor – duben 1983). "Výkonné nástroje QNX". PC Magazine. 269–297.
- ^ Advani, Prakash (14. června 2001). „Rozhovor s Paulem Lerouxem“. FreeOS.com.
- ^ Oberle, Bonnie (30. října 1998). „Vrácení laskavosti“. Otisk. Zlepšování publikací, Waterloo. p. 7.
- ^ Sager, Gary R .; Melber, John A .; Fong, Kenneth T. (leden 1985). "Systém 75: operační systém Oryx / Pecos". Technický deník AT&T. Sv. 64 č. 1. str. 251–268. doi:10.1002 / j.1538-7305.1985.tb00431.x.
- ^ Coppens, J.A.W.M (srpen 1988). „Informační bezpečnost v lokálních sítích, zejména v přístavu Waterloo“ (PDF). Technische Universiteit Eindhoven. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ „Port - (počítačový jazyk)“. Online historická encyklopedie programovacích jazyků.
- ^ "Přístav". Počítačový slovník informačních technologií.
- ^ Rigney, Steve (duben 1992). „Základy LAN, část 2 - LANstep“. PC Magazine. p. 316.
- ^ Nunn, Tom (24. srpna 1994). „Hayes se pokouší vyložit výzkumné a vývojové zařízení společnosti Kitchener-Waterloo“. Noviny. Montreal, QC Kanada.
- ^ Hitz, David; Harris, Guy; Lau, James K .; Schwartz, Allan M. (leden 1990). „Použití Unixu jako jedné součásti lehkého distribuovaného jádra pro víceprocesorové souborové servery“ (PDF). Auspex. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Kopp, Carlo (červen 1997). „Odvážní malí opékači?“. Průmyslové publikace Dr. Carla Koppsa.
- ^ Jerian, Charles P. „Domovská stránka Chucka - pracoval jsem pro CacheFlow Inc“. jerian.tripod.com.
Další čtení
- Malcolm, Michael A .; Stafford, Gary J. (září 1977). „Psací sada Thoth Assembler“ (PDF). Oddělení informatiky na University of Waterloo. Citovat deník vyžaduje
| deník =
(Pomoc)* Cheriton, D. R .; Murphy, W. (září 1979). "Příručka programátora systému Verex". University of British Columbia. Citovat deník vyžaduje| deník =
(Pomoc) - Cheriton, David R. (1979). "Návrh operačního systému tak, aby byl ověřitelný". Citovat deník vyžaduje
| deník =
(Pomoc) - Cheriton, D. R. (září 1980). "Verexové jádro". University of British Columbia. Citovat deník vyžaduje
| deník =
(Pomoc) - Cheriton, D. R. (listopad 1981). "Návrh distribuovaného jádra". Sborník z národní konference ACM.
- Wallis, Peter J. L. (1982). Přenosné programování. Macmillana. ISBN 0333310365.
- Cheriton, David R. (1982). Systém Thoth: strukturování a přenositelnost více procesů. Severní Holandsko. ISBN 0-444-00701-6.
- Malcolm, Michael Alexander; Dyment, Doug (prosinec 1983). „Zkušenosti s návrhem uživatelského rozhraní portu Waterloo“. SIGSMALL '83: Proceedings of the ACM SIGSMALL Symposium 1983 on Personal and Small Computers: 168–175. doi:10.1145/800219.806664. ISBN 0897911237. S2CID 14736242.