Aleph kärna - Aleph kernel
Aleph är en avvecklad operativsystemkärna som utvecklades vid University of Rochester som en del av deras RIG- projekt 1975. Aleph var en tidig uppsättning på vägen mot skapandet av det första praktiska microkernel- operativsystemet Mach .
Aleph använde kommunikation mellan processer för att flytta data mellan program och kärnan, så att applikationer kunde få tillgång till resurser på vilken dator som helst i det lokala nätverket (som vid den tidpunkten var ett experimentellt Xerox Ethernet på 3 Mbit / s ). Projektet gick så småningom ut efter flera år på grund av snabba förändringar på hårdvarumarknaden, men idéerna ledde till skapandet av Accent vid Carnegie Mellon University , vilket i sin tur ledde till Mach .
Applikationer skrivna för RIG-systemet kommuniceras via portar . Portar var i huvudsak meddelandeköer som upprätthölls av Aleph-kärnan, identifierade av ett maskinunikt (i motsats till globalt unikt) ID som består av ett process-id, port-id-par. Processer tilldelades automatiskt ett processnummer , eller pid , vid start och kunde sedan be kärnan att öppna portar. Processer kan öppna flera portar och sedan "läsa" dem, automatiskt blockera och låta andra program köras tills data kom. Processer kan också "skugga" en annan genom att få en kopia av varje meddelande som skickas till det som skuggades. På samma sätt kan program "interportera" på en annan, ta emot meddelanden och väsentligen klippa ut det ursprungliga meddelandet ur konversationen.
RIG implementerades på ett antal Data General Eclipse minidatorer . Portarna implementerades med hjälp av minnesbuffertar, begränsade till 2 kB i storlek. Detta gav betydande omkostnader vid kopiering av stora mängder data. Ett annat problem, som först insåg i efterhand, var att användningen av globala ID: er tillät skadlig programvara att "gissa" i hamnar och därmed få tillgång till resurser som de inte borde ha haft. Och eftersom dessa ID: n baserades på program-ID: t ändrades port-ID: n om programmet startades om, vilket gjorde det svårt att skriva servrar med klienter som kunde lita på ett visst portnummer för service.
Referenser
Rashid, Richard F (1986). "Från RIG till Accent till Mach: utvecklingen av ett nätverksoperativsystem". Proceedings of 1986 ACM Fall joint computer conference . s. 1128–1137. ISBN 0-8186-4743-4. S2CID 1114881 .