| Zeile 12: | Zeile 12: | ||
| Homepage = http://gitorious.org/niwohlos | | Homepage = http://gitorious.org/niwohlos | ||
}} | }} | ||
| − | :'' | + | :''„Ich verstehe Ihre Frage so, dass es Benutzer gibt, die wünschen, dass wir die Entwickler von niwohlOS dazu mobilisieren, um einen Paketfilter zu implementieren. Mir ist nicht bekannt, dass eine solche Absicht besteht. Die Entwickler kooperieren zur Sicherung von niwohlOS eifrig mit dem BSI, und ihre Arbeitskraft wird dafür voll eingesetzt. Niemand hat die Absicht, eine Firewall zu errichten!“''<br /> |
| − | : | + | :— [[Linux|Linus Torvalds]], der alte [[Lizenzen#GNU General Public License|Kommunist]], äußert sich zu niwohlOS.''' |
| Zeile 21: | Zeile 21: | ||
=== Bootvorgang === | === Bootvorgang === | ||
==== Phase Ia: GRUB ==== | ==== Phase Ia: GRUB ==== | ||
| − | Als Bootloader wird der hochprofessionelle Bootloader [[GRUB]] verwendet. Dieser wird von zahlreichen professionellen Firmen und Betriebssystemen seit Jahren mit Erfolg eingesetzt und verspricht eine optimale Grundlage für | + | Als Bootloader wird der hochprofessionelle Bootloader [[GRUB]] verwendet. Dieser wird von zahlreichen professionellen Firmen und Betriebssystemen seit Jahren mit Erfolg eingesetzt und verspricht eine optimale Grundlage für jedes Betriebssystem. GRUB richtet eine standardisierte und standartisierte Umgebung ein und übergibt der zweiten Phase, dem niwohunloader, alle nötigen Daten, die sie benötigt. Auch lädt GRUB dank hochperformanter Lademechnismen unsere beiden Kernel stoiber32 und stoiber64 in den Speicher. |
==== Phase Ib: NILO ==== | ==== Phase Ib: NILO ==== | ||
| Zeile 27: | Zeile 27: | ||
==== Phase II: niwohunloader ==== | ==== Phase II: niwohunloader ==== | ||
| − | Um dem User unnötige und komplexe Konfiguration abzunehmen wird nach dem | + | Um dem User unnötige und komplexe Konfiguration abzunehmen, wird nach dem eigentlichen Bootloader ein Zwischenloader, der niwohunloader, geladen. Dieser entscheidet anhand komplexer und hochperformanter Algorithmen, welche Systemarchitektur der entsprechende Computer besitzt und lädt daraufhin alle passenden Komponenten nach. Hierdurch ist ein voll-automatisierter Ablauf des Ladeprozesses bei optimaler Perfomance und höchster Stabilität garantiert. |
=== Kernel === | === Kernel === | ||
| Zeile 34: | Zeile 34: | ||
==== 32-Bit: stoiber32 ==== | ==== 32-Bit: stoiber32 ==== | ||
| − | Für alle Computer mit bewährten und dennoch hochperformanten 32-Bit-Prozessoren dient der 32-Bit-Kernel stoiber32. Dieser zeichnet sich durch eine | + | Für alle Computer mit bewährten und dennoch hochperformanten 32-Bit-Prozessoren dient der 32-Bit-Kernel stoiber32. Dieser zeichnet sich durch eine extrem leistungsfähige Speicherverwaltung und ein auch unter Extrembedingungen noch optimal arbeitendes Multitasking aus, welches bis zu zwei Prozesse mit unglaublicher Geschwindigkeit nahezu parallel ausführen kann. Stoiber32 verfügt über ein Linux-Subsystem, mit dessen Hilfe es möglich ist, Linux-Module in den Kernel einzubinden. |
==== 64-Bit: stoiber64 ==== | ==== 64-Bit: stoiber64 ==== | ||
| − | Hochmoderne Computer mit hochperformanten und hochkomplexen 64-Bit-Prozessoren stehen dank stoiber64 neue Möglichkeiten zur Verfügung. Der 64-Bit-Kernel verfügt | + | Hochmoderne Computer mit hochperformanten und hochkomplexen 64-Bit-Prozessoren stehen dank stoiber64 neue Möglichkeiten zur Verfügung. Der 64-Bit-Kernel verfügt ebenfalls über eine hochoptimierte und auf 64-Bit-Systeme mit mehr als 4 Petabyte Arbeitsspeicher ausgelegte Speicherverwaltung, welche garantiert, dass ein Programm nie zu wenig Speicher hat, auch wenn zu wenig Speicher vorhanden ist. Win-Win-Situation wird dieses Verfahren im professionellem Umfeld genannt. Auch stoiber64 verfügt über hochperformantes Multitasking, welches ebenfalls bis zu zwei Programme nahezu gleichzeitig und in einer atemberaubenden Geschwindigkeit ausführen kann. |
==== Namensherkunft ==== | ==== Namensherkunft ==== | ||
| − | Da der Kernel emmmh (ein micromonolithischer Modularhybrid) ist, wird er auch als | + | Da der Kernel emmmh (ein micromonolithischer Modularhybrid) ist, wird er auch als „Stoiber“ bezeichnet. Hierin soll auch das Ziel KISS (Keep it simple, stupid) zum Ausdruck kommen (in Anerkennung der Leistungen Edmund Stoibers beim Bürokratieabbau in Europa). |
tl;dr: Wie Linux, nur geiler. | tl;dr: Wie Linux, nur geiler. | ||
=== Treiber === | === Treiber === | ||
| − | Es gibt zwei Sorten von Treibern in niwohlOS: Ring-0-Treiber und Ring-3-Treiber (oder auch Kernel- und Usertreiber). Kerneltreiber werden direkt in den Kernel miteingelinkt und laufen mit der gleichen Privilegsstufe wie der Kernel, Usertreiber können zur Laufzeit nachgeladen werden und laufen im Ring | + | Es gibt zwei Sorten von Treibern in niwohlOS: Ring-0-Treiber und Ring-3-Treiber (oder auch Kernel- und Usertreiber). Kerneltreiber werden direkt in den Kernel miteingelinkt und laufen mit der gleichen Privilegsstufe wie der Kernel, Usertreiber können zur Laufzeit nachgeladen werden und laufen im Ring 3, also mit Privilegien, die jedes normale Programm auch besitzt. Durch eine ausgeklügelte und hochmoderne HAL, der niwohlosenHAL, können Usertreiber die gleiche Funktionalität wie Kerneltreiber nutzen, ohne jedoch bei Instabilität die Ausführung des Systems zu behindern. Durch den perfekten Mix aus extrem stabilen Kerneltreibern und hochoptimierten Usertreibern kann ein sicheres, stabiles und gleichzeitig hochperformantes System garantiert werden. |
==== [[Interprozesskommunikation]] ==== | ==== [[Interprozesskommunikation]] ==== | ||
| Zeile 58: | Zeile 58: | ||
=== niwohlose-developers === | === niwohlose-developers === | ||
| − | Die | + | Die „niwohlose-developers“ sind das Entwicklerteam rund um niwohlOS sowie anderen Projekten. Es besteht aus vier hochoptimierten, äh, hochintelligenten Programmierern und Softwareentwicklern. |
==== XanClic alias Crazy-OS-names ==== | ==== XanClic alias Crazy-OS-names ==== | ||
| Zeile 64: | Zeile 64: | ||
==== DerHartmut alias TheHartmutYouHaveCalledIsTemporarilyNotAvailable ==== | ==== DerHartmut alias TheHartmutYouHaveCalledIsTemporarilyNotAvailable ==== | ||
| − | [[Benutzer:Hartmut|DerHartmut]] (kein hochkomplexes Hybridakrobackronym) ist ebenfalls einer der Top-Entwickler von niwohlOS. Er besitzt jahrelange Erfahrung auf dem Gebiet der Betriebssystementwicklung und daher beste Reputationen auf diesem Gebiet. Er entwickelte ebenfalls sein eigenes Betriebssystem im Alleingang ([[ | + | [[Benutzer:Hartmut|DerHartmut]] (kein hochkomplexes Hybridakrobackronym) ist ebenfalls einer der Top-Entwickler von niwohlOS. Er besitzt jahrelange Erfahrung auf dem Gebiet der Betriebssystementwicklung und daher beste Reputationen auf diesem Gebiet. Er entwickelte ebenfalls sein eigenes Betriebssystem im Alleingang ([[Nusskuchen|nusskuchen]]) und arbeitet an einem neuen, hochoptimierten Betriebssystem, quasi als „Hobby“ neben niwohlOS. Er reichte bisher wenige, aber dafür umso wichtigere Patches bei [[Týndur|týndur]] ein, darunter zwei hochperformante Interpreter für die wohl wichtigsten Sprachen im industriellen Umfeld, Malbolge und hq9+, er halb-portierte den extrem komplexen Mailclient mutt und implementierte einer der wichtigsten Features unter týndur: lpt moo. Er ist bei niwohlOS für alle <s>kaputten</s> hochoptimierten Stellen zuständig. Seine mannigfaltigen Pflichten in vielfältigen anderen Gebieten zwingen ihn allerdings bisweilen, die entsprechende Arbeit <s>monatelang</s> zeitweilig zu suspendieren. |
==== SHyx0rmZ alias HardcoreProgger ==== | ==== SHyx0rmZ alias HardcoreProgger ==== | ||
| − | [[Benutzer:SHyx0rmZ|SHyx0rmZ]] (hochoptimierter Buchstabenkomplex) ist auch einer der Top-Entwickler von niwohlOS. Er programmiert seit sage und schreibe 11 Jahren und weist in diesem Feld höchste Kompetenzen auf. | + | [[Benutzer:SHyx0rmZ|SHyx0rmZ]] (hochoptimierter Buchstabenkomplex) ist auch einer der Top-Entwickler von niwohlOS. Er programmiert seit sage und schreibe 11 Jahren und weist in diesem Feld höchste Kompetenzen auf. Er wird oft als „Hardcore-Informatiker“ bezeichnet, denn er schafft, was andere nicht schaffen: Er hat sein hochperformantes und hochoptimiertes Betriebssystem [[Nuke]] mit gleich '''drei''' Kerneln ausgestattet, um aus jedem erdenklichen System das höchste Maß an Leistung herauszukitzeln. Des Weiteren schrieb er Vortex, einen Loader, der unter anderem in [[Qultics|qultics]] eingesetzt wird und womöglich von Microsoft patentiert wird. Er ist bei niwohlOS für die ganz komplexen Sachen zuständig. |
==== DickHuuhn alias DickHuuhn ==== | ==== DickHuuhn alias DickHuuhn ==== | ||
| Zeile 74: | Zeile 74: | ||
=== Die Committer === | === Die Committer === | ||
| − | Neben dem Entwicklerteam gibt es zahlreiche | + | Neben dem Entwicklerteam gibt es zahlreiche hochprofessionelle Commiter, die wertvollen Code und wertvolle Ideen tagtäglich committen. |
==== pocky alias 1337h4x0r ==== | ==== pocky alias 1337h4x0r ==== | ||
| Zeile 80: | Zeile 80: | ||
==== Cjreek alias Sado-Masochist aka Windows-User ==== | ==== Cjreek alias Sado-Masochist aka Windows-User ==== | ||
| − | [[Benutzer:Cjreek|Cjreek]] (kein Mensch weiß, was das heißen soll) ist ebenfalls ein hochprofessionelle Entwickler, der zur Zeit bei einem Tierversuch teilnimmt, bei welchem getestet wird, wie sich die dauerhafte ernsthafte Nutzung | + | [[Benutzer:Cjreek|Cjreek]] (kein Mensch weiß, was das heißen soll) ist ebenfalls ein hochprofessionelle Entwickler, der zur Zeit bei einem Tierversuch teilnimmt, bei welchem getestet wird, wie sich die dauerhafte ernsthafte Nutzung des sogenannten <s>Außer</s>Betriebssystems „Windows“ auf Mensch und Maschine auswirkt. Er hat ebenfalls weitreichende Erfahrungen in der Betriebssystementwicklung und entwickelt den multiboot-kompatiblen Bootloader NILO, der irgendwann als Ersatz für den hochprofessionellen GRUB dienen soll. |
==== Paddy alias Paddynator ==== | ==== Paddy alias Paddynator ==== | ||
| Zeile 99: | Zeile 99: | ||
=== Wie bewirbt man sich als Committer? === | === Wie bewirbt man sich als Committer? === | ||
| − | Sag ich nicht. | + | Sag ich nicht. Könnt’ ja jeder kommen. Nene. |
=== Was ist V.O.M.I.T.? === | === Was ist V.O.M.I.T.? === | ||
| − | V.O.M.I.T. steht für | + | V.O.M.I.T. steht für „Verbose object-oriented machine-readable information transfer“. Unsere besten Designer verbrachten Monate damit, ein ansprechendes und elegeantes Design für diese neue Art der Interprozesskommunikation zu entwerfen. |
Dann haben wir aber doch XML-RPC genommen, weil das auch auf die Beschreibung passt. | Dann haben wir aber doch XML-RPC genommen, weil das auch auf die Beschreibung passt. | ||
| Zeile 112: | Zeile 112: | ||
Es gibt Konkurrenz? | Es gibt Konkurrenz? | ||
| − | Okay, um ehrlich zu sein: Ja, es gibt ein System. Das System heißt [[PrettyOS]] (Personally retarded ethymology table-tennis, yeah, operating system ( | + | Okay, um ehrlich zu sein: Ja, es gibt ein System. Das System heißt [[PrettyOS]] (''Personally retarded ethymology table-tennis, yeah, operating system'' (dass es so heißt, ist allerdings nur eine Vermutung!)) und ist ein hochoptimiertes Betriebssystem mit einigen vollkommenen Neuerungen und Innovationen. Welche, das wissen wir auch nicht. Ach ja, und dann gibt es noch dieses „týndur“, aber der stellt ja eher keine Gefahr dar bei genauerer Betrachtung (und nachdem man die rosa-rote Naivitätsbrille abgenommen hat). |
=== Was war an der GUI nochmal so besonders? === | === Was war an der GUI nochmal so besonders? === | ||
| − | Das Konzept der GUI ist recht simpel, denn es ist einfach nur D.U.M.M.. Da viele User bereits Erfahrung im Umganng mit D.U.M.M.-heit besitzen, haben wir uns für dieses tolle Konzept entschieden. Falls du dumm bist und darum nicht genug Erfahrung mit D.U.M.M.-heit hast, hier die Auflösung: D.U.M.M. steht für | + | Das Konzept der GUI ist recht simpel, denn es ist einfach nur D.U.M.M.. Da viele User bereits Erfahrung im Umganng mit D.U.M.M.-heit besitzen, haben wir uns für dieses tolle Konzept entschieden. Falls du dumm bist und darum nicht genug Erfahrung mit D.U.M.M.-heit hast, hier die Auflösung: D.U.M.M. steht für „Deutsches Userinterface mit Mauszeiger“. |
=== Was für Tabletten nehmt ihr eigentlich? Und warum nehmt ihr nicht genug davon? === | === Was für Tabletten nehmt ihr eigentlich? Und warum nehmt ihr nicht genug davon? === | ||
| Zeile 124: | Zeile 124: | ||
Zahlreiche professionelle Entwickler haben eine Kritik zu niwohlOS abgegeben: | Zahlreiche professionelle Entwickler haben eine Kritik zu niwohlOS abgegeben: | ||
| − | * [[Benutzer:DickHuuhn|Hochprofessioneller, neutraler, unvoreingenommener Entwickler #1]]: '' | + | * [[Benutzer:DickHuuhn|Hochprofessioneller, neutraler, unvoreingenommener Entwickler #1]]: ''„Jo“'' |
| − | * [[Benutzer:XanClic|Hochprofessioneller, neutraler, unvoreingenommener Entwickler #2]]: '' | + | * [[Benutzer:XanClic|Hochprofessioneller, neutraler, unvoreingenommener Entwickler #2]]: ''„Super *Applaus*“'' |
| − | * [[Benutzer:Hartmut|Hochprofessioneller, neutraler, unvoreingenommener Entwickler #3]]: '' | + | * [[Benutzer:Hartmut|Hochprofessioneller, neutraler, unvoreingenommener Entwickler #3]]: ''„Astrein.“'' |
| − | * Zufriedener Benutzer: '' | + | * Zufriedener Benutzer: ''„Wer sind Sie, und wie sind Sie in mein Haus gekommen?“'' |
| − | * Zufriedener Black Hat: '' | + | * Zufriedener Black Hat: ''„Oh EXPLOITABLE!“'' |
| − | * [[Benutzer:Ehenkes|ehenkes]]: '' | + | * [[Benutzer:Ehenkes|ehenkes]]: ''„niwohlOS <-- Name finde ich gut, ein Os, das sich nie Wohl fühlt...‚niw‘ rückwärts erinnert allerdings an ‚win‘“'' |
| Zeile 137: | Zeile 137: | ||
* Ausgeklügelte Verzeichnisstruktur des Quelltextes | * Ausgeklügelte Verzeichnisstruktur des Quelltextes | ||
* State-of-the-art Makefile | * State-of-the-art Makefile | ||
| − | <!-- Boah Leute, hier kommt nix mehr rein, ihr macht den Witz kaputt! Was fertig ist, bitte nach | + | <!-- Boah Leute, hier kommt nix mehr rein, ihr macht den Witz kaputt! Was fertig ist, bitte nach „Teilweise implementiert“, was teilweise fertig ist und den Rest bitte nach „Rudimentär implementiert“. Danke! --DickHuuhn --> |
| Zeile 143: | Zeile 143: | ||
Folgende Teile sind in Arbeit und schon teilweise implementiert: | Folgende Teile sind in Arbeit und schon teilweise implementiert: | ||
* niwohunloader: Kann beide Kernel laden | * niwohunloader: Kann beide Kernel laden | ||
| − | * SMP: APs werden niwohlosisiert und laufen in Ermangelung genügender Tasks bisher noch im Leerlauf | + | * SMP: APs werden niwohlosisiert und laufen in Ermangelung genügender Tasks bisher noch im Leerlauf – theoretisch ist ein Multiprozessorbetrieb aber bereits möglich |
== Rudimentär implementiert == | == Rudimentär implementiert == | ||
Folgende Teile hat irgendwer halb-besoffen runtergetippt und trotzdem eingecheckt: | Folgende Teile hat irgendwer halb-besoffen runtergetippt und trotzdem eingecheckt: | ||
| − | * stoiber32: Kann schon Exceptions, Interrupts, Paging, APIC, Multitasking, Syscalls, SMP, | + | * stoiber32: Kann schon Exceptions, Interrupts, Paging, APIC, Multitasking, Syscalls, SMP, … |
* stoiber64: Kann auch schon Exceptions und lernt gerade physische Speicherverwaltung. | * stoiber64: Kann auch schon Exceptions und lernt gerade physische Speicherverwaltung. | ||
== To-Do == | == To-Do == | ||
| − | Folgende Teile müssen noch implementiert werden | + | Folgende Teile müssen noch implementiert werden: |
* printf gut machen | * printf gut machen | ||
* kprintf gut machen | * kprintf gut machen | ||