TOPSYTOPSY (a Teachable OPerating SYstem) ist ein multithreaded, sehr portables Betriebssystem, welches an der Eidgenössischen Technischen Hochschule (ETH) Zürich am Computer Engineering und Networks Laboratory entwickelt wurde. Der Kernel ist ein von George Fankhauser in ISO-C geschriebener multithreaded Mikrokernel, welcher zirka 20 KB umfasst. TOPSY bietet Einblicke in die Bereiche Nebenläufigkeit, Treiberprogrammierung und Betriebssystemkonzepte und wird deshalb ausschließlich für Unterrichtszwecke verwendet. Obwohl TOPSY portabel ist, wurde die eigentliche hardwareabhängige Implementation ursprünglich für die Plattform IDT MIPS R3052E geschrieben. In verschiedenen Semester- und Diplomarbeiten wurde TOPSY auf eine PC-kompatible (Lukas Ruf und George Fankhauser), Palm-V- (Gabriele Giambonini und Lukas Ruf), IXP1200- (David Reist, Silvio Dragone, Boris Lutz, Claudio Jeker und Lukas Ruf) und HP-iPAQ-Plattform (Thomas Brunner und Lukas Ruf) portiert. TOPSY zeichnet sich durch folgende Eigenschaften aus:
Moderne Betriebssystemkonzepte wurden in der Diplomarbeit von Boris Lutz und Claudio Jeker zu TOPSY v3 unter der Leitung von Lukas Ruf umgesetzt. TOPSY v3 unterstützt u. a. folgende Konzepte:
Die Lehre und Forschung mit TOPSY wird durch MIPS-R3052E-Emulatoren unterstützt. Ein plattformunabhängiger, Java-basierter Emulator (George Fankhauser) und ein hinsichtlich Ausführungsgeschwindigkeit optimierter, modularer C++-basierter (GNU C++) (Florian Kaufmann und Lukas Ruf) stehen zur Verfügung. TOPSY wird an der ETH Zürich und verschiedenen Universitäten in Europa und Australien in der Lehre eingesetzt. Eine mehr als 70-seitige Dokumentation und Übungsunterlagen stehen zur Verfügung. Eine Mailingliste[1] sowie ein Wiki-FAQ[2] unterstützen den Erfahrungsaustausch. Einzelnachweise
Weblinks |