Was ist ein Betriebssystem?

Message
Author
bakunin
Posts: 597
Joined: 16. Aug 1999 6:44
Location: Lorsch (Südhessen)
Contact:

Was ist ein Betriebssystem?

#1 Post by bakunin »

Hi!

Kann mir jemand eine zeitgemäße Definition für "Betriebssystem" nennen?

Im Moment tendiere ich zu: "Eine Sammlung von Software, die das Benutzen eines Computers möglich machen soll." <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">

Cheers,
GNU/Wolfgang

Beastie

Re: Was ist ein Betriebssystem?

#2 Post by Beastie »

Jargon-File:

operating system n.

[techspeak] (Often abbreviated `OS') The foundation software of a machine; that which schedules tasks, allocates storage, and presents a default interface to the user between applications. The facilities an operating system provides and its general design philosophy exert an extremely strong influence on programming style and on the technical cultures that grow up around its host machines. Hacker folklore has been shaped primarily by the Unix, ITS, TOPS-10, TOPS-20/TWENEX, WAITS, CP/M, MS-DOS, and Multics operating systems (most importantly by ITS and Unix).

Leander Hanwald

Re: Was ist ein Betriebssystem?

#3 Post by Leander Hanwald »

Ein Betriebssystem ist die Software, welche als Schnittstelle zwischen Anwender bezogener Software und Hardware steht und nicht direkt mit dem User interagiert.
So definiere ich es mir.
Für mich endet das OS beim Kernel. Denn alles drum herum ist portiertbar und nicht systemspezifisch.

Oder eine andere definition:
Ein Betriebssystem ist die Hardware nahe Software, über die man sich wunderbar in sehr langen Flames streiten kann ;)

bakunin
Posts: 597
Joined: 16. Aug 1999 6:44
Location: Lorsch (Südhessen)
Contact:

Re: Was ist ein Betriebssystem?

#4 Post by bakunin »

Hi!

Schön und gut, aber diese Definitionen passen nur auf bestimmte Dinge. Nehmen wir z.B. L4Linux, dort wurde Linux auf den L4-Mikrokernel portiert und läuft dort als gewöhnlicher "Prozess" (den Begriff gibt es in L4 eigentlich nicht, es gibt nur Threads und Adressräume, aber ignorieren wir das mal). Außerdem wurde Linux auch schon auf Mach portiert. Linux ist also auf verschiedene Systeme portierbar. <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle"> Außerdem hat schonmal Farid Hajji Linux und Hurd parallel auf einem Mach-Kernel laufen lassen. Was ist in diesem Fall das Betriebssystem und was nicht? Oh, dann gibt es noch Exokernel, dort ist es wohl der Normalfall, dass mehrere "Personalitäten" gleichzeitig existieren, denn eine Unix-Umgebung wäre dort nur eine Bibliothek. Genau wegen solchen Fällen fällt es mir schwer, den Begriff zu definieren. Alles, was portabel ist, nicht zum Betriebssystem zählen zu wollen ist außerdem etwas extrem, denn es kann mir keiner erzählen, dass etwas derart essentielles wie die libc nicht Teil eines Unix-Systems ist.

Die Definition aus dem Jargon-File ist in dieser Hinsicht extrem vage.

Cheers,
GNU/Wolfgang

Jochen

Re: Was ist ein Betriebssystem?

#5 Post by Jochen »

Vage? Hm. Ich würde eher "pragmatisch" sagen.

Schau Dir Windows an. Dort ist die GUI ein Teil des Betriebssystems, aus der Philosophie der Entwickler heraus geboren. Unter UNIX ist eine GUI (m.E.) nicht Bestandteil des OS - XFree86 vielleicht, aber nicht die GUI an und für sich. In Deinem Beispiel mit Linux und Hurd über Mach4 gilt dementsprechend, dass Du 2 Bestriebsysteme auf dem Rechner hast, die lediglich einen gemeinsamen Kern zur Verwaltung der grundlegendsten Ressourcen zurückgreifen.

Also würde ich schon der Jargon-Definition zustimmen...

Jochen

bakunin
Posts: 597
Joined: 16. Aug 1999 6:44
Location: Lorsch (Südhessen)
Contact:

Re: Was ist ein Betriebssystem?

#6 Post by bakunin »

Hi Jochen!

> Vage? Hm. Ich würde eher "pragmatisch" sagen.

Das eine schließt in diesem Fall das andere ja nicht aus. Aber wenn man den Begriff nicht vernünftig definieren kann, wäre es dann nicht sinnvoller, komplett auf ihn zu verzichten? Software kann heute auf so viele Arten kombiniert werden (Hurd auf Mach auf Linux geht übrigens auch), dass man praktisch oft keine Grenze ziehen kann. Oder anders gesagt: Welchen Nutzen hat der Begriff des Betriebssystems dann noch?

Cheers,
GNU/Wolfgang

ytimk
Posts: 341
Joined: 07. Sep 2001 0:08

Re: Was ist ein Betriebssystem?

#7 Post by ytimk »

Ich hätte ein paar offizielle Definitionen hier 'rumliegen (DIN, ISO und IEEE), ob die wirklich zeitgemäß sind, darüber lässt sich dann wohl streiten, die sind AFAIK so aus den 70ern.... <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">

Wenn Interesse besteht, kann ich die ja raussuchen und posten (aber auch nur dann <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">)

User avatar
heinrich
Posts: 219
Joined: 22. Sep 1999 11:22
Location: N49.137 E8.544

Re: Was ist ein Betriebssystem?

#8 Post by heinrich »

@GNU/Wolfgang
> Außerdem hat schonmal Farid Hajji Linux und Hurd parallel auf einem Mach-Kernel laufen lassen
Tanenbaum spricht in seinem Buch über "Modern Operating Systems" von MS-DOS, Unix (AT&T und BSD), Amoeba und Mach (ehem. RIG) als Betriebssystem.
Bei Mach kann ein BSD-Kernel als Userland Process laufen und es können hiermit für BSD kompilierte Binaries direkt unter Mach ausgeführt werden.

Nach dieser Definition müsste das Betriebssystem (wenn man den Microkernel als Betribssystem sieht)eigentlich der Mach sein. Wobei Mach durch seine Microkernel-Struktur wiederum andere Kernel im Userland laufenlassen kann....
Last edited by heinrich on 05. Feb 2002 9:12, edited 2 times in total.

User avatar
Stormbringer
Posts: 1570
Joined: 11. Jan 2001 11:01
Location: Ruhrgebiet

Re: Was ist ein Betriebssystem?

#9 Post by Stormbringer »

Hi,

seit Jahren fasse ich in Kurzform den Term Betriebssystem wie folgt zusammen:
Das Betriebssystem jene Software, welche unterschiedliche, oftmals nur elementare, Hardwarekomponenten für den Zugriff einer dritten Software verwaltet, bzw. zur Verfügung stellt, wodurch die dritte Software nicht direkt sämtlich Hardware ansprechen muß und/oder kann, sondern systemweit geltende Interfaces nutzen kann/muß.

Gruß
Continuum Hierarchy Supervisor:
You have already been assimilated.
(Rechtschreibungsreformverweigerer!)

Jochen

Re: Was ist ein Betriebssystem?

#10 Post by Jochen »

@Wolfgang:

Re-Hi!

Nur weil ein Begriff nicht exakt zu definieren ist, muss er ja nicht nutzlos sein. Dazu gibt es übrigens viele Beispiele; eines der bekanntesten dürfte "Liebe" sein... Man ist so unscharfe Begriffe im IT-Bereich einfach nicht so gewöhnt wie im RL, aber sie haben in beiden Bereichen ihre Existenzberechtigung. Man sollte sich einfach nur des Spielraums bewusst sein und ein wenig auf den Kontext achten, damit das, was man ausdrücken möchte, nicht falsch ankommt.

Um noch mal auf das Betriebssystem zurückzukommen: Denke mal an den Embedded-Bereich. Dort sind Programme, die man typischerweise nur zu den Anwendungen und <i>nicht</i> zum Betriebssystem zählen würde, m.E. eben doch dem Betriebsystem zugehörig. Ohne sie verliert ansonsten der ganze Kasten seinen Sinn - CPU läuft, RAM perfekt verwaltet, nur passiert nix drauf, keine Eingabe, keine Ausgabe... Die Anwendung übernimmt sozusagen die Rolle der Shell an einem Allzweckrechner.

Nun könnte man argumentieren, dass man die Shell austauschen könnte und sie daher nicht unbedingt Bestandteil ist. Austauschen schon, aber weglassen? Nicht ohne sehr viel am gesamten Rest-Betriebssystem umzustricken und damit so weit zu verändern, dass es schon wieder ein anderes wäre - wenn auch immer noch auf einem Linux-Kernel basierend...

Man könnte sich nun auf einen kleinsten gemeinsamen Nenner zurückziehen und von der Verwaltung der grundlegendsten Ressourcen wie CPU-Zeit, RAM, Plattenspeicher reden, aber das wird sehr schnell wieder sehr eng. Ob man in das "technische OS" nach der o.a. Definition und das "logische OS" im Sinne des User-Interfaces und Design-Philosophien unterscheiden sollte? Das klingt mir ähnlich weit hergeholt wie die KiBi-Bytes... (Nein, bitte keine Flames zu dem Thema.)

Jochen

bakunin
Posts: 597
Joined: 16. Aug 1999 6:44
Location: Lorsch (Südhessen)
Contact:

Re: Was ist ein Betriebssystem?

#11 Post by bakunin »

Hi!

Descartes schrieb:
> Tanenbaum spricht in seinem Buch über "Modern Operating Systems" von MS-DOS, ...

MS-DOS als modernes Betriebssystem. Muss ich da noch etwas hinzufügen? <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle"> Die Bücher von Tanenbaum sind gewiss interessant und ich werde sie früher oder später wohl einmal lesen. Allerdings ist das, was er sagt, in diesem Fall nicht allgemein anwendbar. Früher hat man des öfteren Mach als Betriebssystem bezeichnet, wofür es damals anscheinend Gründe gab (auch wenn ich keine besonders guten erkennen kann). Aus heutiger Sicht sieht man das aber wohl schon ganz anders, denn niemand bzeichnet einen Mikrokernel noch als Betriebssystem, im Gegenteil: Man bekommt eher den Eindruck, dass die Konzepte und die Software, die auf einem Mikrokernel aufbauen als Betriebssystem erachtet werden. D.h. es wird praktisch nur dieser Teil als Betriebssystem bezeichnet, der Kernel gehört mehr oder weniger gar nicht mehr zum System selbst. Und hier dachte ich jetzt noch gar nicht einmal an GNU/Hurd, sondern primär an L4 und die Projekte, die darauf aufbauen.

Stormbringer schrieb:
> Das Betriebssystem jene Software, welche unterschiedliche, oftmals nur elementare, Hardwarekomponenten für den Zugriff einer dritten Software verwaltet, bzw. zur Verfügung stellt, wodurch die dritte Software nicht direkt sämtlich Hardware ansprechen muß und/oder kann, sondern systemweit geltende Interfaces nutzen kann/muß.

Das ist ein Kernel. Ein Kernel heißt nicht ohne Grund Kernel, sondern weil er den Kern eines Betriebssystems bildet, weshalb man ihn nicht mit dem Betriebssystem gleichsetzen kann. Es widerspricht auch stark dem, was man in der Praxis darunter versteht, etwa wird unter einem Unix-System üblicherweise alles vom Kernel über die Bibliotheken bis zu den Benutzerprogrammen verstanden. Würde die "Unix-Philosophie" sich nur auf den Kernel beziehen, so wäre das sehr unterhaltsam, denn der Kernel ist der einzige Teil eines Unix-Systems, der sich absolut nicht an die Unix-Philosophie hält.

Jochen schrieb:
> Nur weil ein Begriff nicht exakt zu definieren ist, muss er ja nicht nutzlos sein. Dazu gibt es übrigens viele Beispiele; eines der bekanntesten dürfte "Liebe" sein...

Ja, nur ist der Unterschied, dass es bei "Liebe" wohl nie anders war, wärend der Begriff des Betriebssytems einmal Sinn gemacht hat, aber heute scheint er obsolet zu sein, zumindest habe ich den Eindruck. Er führt wohl dazu, dass Äpfel mit Birnen verglichen werden.

> Austauschen schon, aber weglassen? Nicht ohne sehr viel am gesamten Rest-Betriebssystem umzustricken und damit so weit zu verändern, dass es schon wieder ein anderes wäre - wenn auch immer noch auf einem Linux-Kernel basierend...

Auch das gibt es, es nennt sich FullPliant. Pliant habe ich ja schon ein paarmal erwähnt in letzter Zeit. FullPliant ist ein auf Linux basierendes Betriebssystem, das mit Unix nicht mehr viel gemeinsam hat.

Cheers,
GNU/Wolfgang

User avatar
Stormbringer
Posts: 1570
Joined: 11. Jan 2001 11:01
Location: Ruhrgebiet

Re: Was ist ein Betriebssystem?

#12 Post by Stormbringer »

Wolfgang,

was ist denn dann mit Betriebssystemen, welche keinen Kernel in dem Sinne haben?

Kommt es denn dann nicht zwangsläufig darauf hinaus, daß ein Betriebssystem immer nur Anwendungsspezifisch mehr oder weniger genau definiert werden kann?

Gruß
Continuum Hierarchy Supervisor:
You have already been assimilated.
(Rechtschreibungsreformverweigerer!)

ytimk
Posts: 341
Joined: 07. Sep 2001 0:08

Re: Was ist ein Betriebssystem?

#13 Post by ytimk »

So, hab' die offiziellen Definitionen mal ausgegraben, ich persönlich find' die ganz interessant <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">:

DIN 44300 Teil 4 (1988):
"Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage die Grundlage der möglichen Betriebsarten des digitalen Rechensystems bilden und insbesondere die Ausführung von Programmen steuern und überwachen."

IEEE Std. 729 (1983):
"Die Gesamtheit der Software, die die Ausführung von Programmen ermöglicht. Ein Betriebssystem kann Dienste bereitstellen zur Verwaltung von Betriebsmitteln, zur Ein-/Ausgabesteuerung und zur Datenverwaltung."

ISO 2382/1 (1974):
"Software for controlling the execution of computer programs and that may provide scheduling, debugging, input/output control, accounting, compilation, storage allocation, data management and related services."

...*g* denn mal frohes diskutieren, die DIN-Definition find ich übrigens zum Reihern, muss man ja dreimal lesen...


>Im Moment tendiere ich zu: "Eine Sammlung von Software, die das Benutzen eines Computers möglich machen soll."<img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">
Kling vielleicht etwas einfach, aber genau so sehe ich das auch! ...man muss ja nicht alles überkompliziert ausdrücken (siehe DIN...)!

Descartes

Re: Was ist ein Betriebssystem?

#14 Post by Descartes »

@GNU/Wolfgang
> MS-DOS als modernes Betriebssystem. Muss ich da noch etwas hinzufügen?
1.) ist Tanenbaums Buch "Modern Operating Systems" schon "etwas" älter und
2.) hält Tanenbaum nicht viel von MS-DOS. Wenn man sein Buch liest merkt man deutlich wie Sch*** das Design von MS-DOS ist. Die Version 1.0 mit 4000 Zeilen Assembler war ok. Aber das war auch die Version die noch nicht bei Microsoft entwickelt wurde. Die Version 2.0 verfügte schon über wesentliche Züge die auch heutige Microsoft-Betriebssysteme "auszeichnen": Buggy, teilweise inkompatibel zur Konkurrenz und undocumented Features.

Jochen

Re: Was ist ein Betriebssystem?

#15 Post by Jochen »

Auch die Definitionen aus den Standards bringen einen nicht viel weiter. Da wird von "kann Dienste bereitstellen" gesprochen - muss aber nicht? Oder "Die Gesamtheit an Software <i>(also Programme, nicht?)</i>, die die Ausführung von Programmen erlaubt." Hm. Kleiner Kreisschluss gefällig? Zumindest wird hier eine implizite Unterteilung in Anwenderprogramme ("Programme") und Betriebssystem-Programme ("Gesamtheit der Software") eingeführt.

> Ja, nur ist der Unterschied, dass es bei "Liebe" wohl nie anders war, wärend der Begriff des Betriebssytems einmal Sinn gemacht hat,

<Off-Topic>Sieh Liebe mal nicht über die Zeit, sondern über die Entwicklung eines Menschen. Da fängt der Begriff auch ganz einfach an (Mama!) und wird spätestens mit dem Einsetzen der Pubertät doch sehr... komplex <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">. Ich denke, jeder Mensch stellt den Inhalt dieses Begriffs für sich ein paar mal im Leben um.</Off-Topic>

Der Begriff des Betriebssystems macht m.E. immer noch Sinn. Früher war er aufgrund Beschränkungen der Hard- und Software fester umrissen als heute (s. Standard-Definitionen), aber schon damals nicht sehr exakt (s. Standard-Definitionen).

Heute zählt eben mehr der Blick auf die Philosophie hinter dem Ganzen, das den Rechner für Menschen anwendbar macht. Wenn Microsoft meint, der Browser gehört zum Betriebssystem, dann ist es eben bei Windows so. Bei Unix eben nicht. Dafür werden bei UNIX Standards wir POSIX eingeführt, welche festlegen, welches Kommando zu welchem Zweck wie heissen muss und welche Optionen es verstehen können muss. Auch <i>das</i> macht ein BS aus - innere Konsistenz. Auch die lässt sich nur unscharf definieren, ist aber durchaus vorhanden.

Lange Rede, kurzer Sinn: "Eine Sammlung von Software, die das Benutzen eines Computers möglich machen soll." <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">

Jochen

Post Reply