Kernel-Framework?

2 Antworten

Da wirst du keine einfach realisierbare Lösung finden. Im Kernel von Linux ist nicht so ein einfach abschaltbares Multitasking, Paging oder sonst ein System drin, das man einfach mit einem Mausklick umschalten könnte. Der Kernel ist erst mal ein recht komplexes Werk / System, bei dem jedes Teil zum anderen passt und auch passen muss.

Vergleichbar mit einem Uhrwerk. Jedes Zahnrad hat seine eigene, definierte Aufgabe, und muss sich verlassen, dass alle anderen Zahnräder exakt ihre Aufgabe erfüllen. Nimmst du ein Zahnrad raus, dann kannst du nur ein exakt passendes Ersatzteil reinbauen, sonst bleibt die Uhr stehen.

Mal nur als Idee: der DOS-Kernel hatte wenige Kilobytes. Kein Multitasking, keine sonderliche Speicherverwaltung etc.

So ein Linux-kernel sind etliche Megabytes.

Du könntest dir aber mal - das sollte es als OpenSource geben - den Quellcode einer DOS-Variante holen und analysieren.

Nein, ein Framework in der Art gibt es nicht - Wenn Du einen nicht vorhandenen Scheduler willst, dann wirst Du ihn auch implementieren müssen - aber:

statt präemptiven auch kooperativen Multitasking einsetzen

Du kannst ohnehin das preemption model wählen.

Auch sonst kannst Du an vielen Stellen Dinge wählen - Nur weil es einen default gibt, bedeutet das nicht, daß man diesen nutzen muß.

Du kannst wenn Du willst Multiuser-Support ausschalten, oder auch Posix Clocks&Timers.

Die Frage ist dann halt, wie gut Dein Userland noch funktioniert :-D.

Weitere Standardfeatures und Einstellungen hängen an der Auswahl für embedded-systeme.

Allerdings lässt sich natürlich nicht jeder Wunsch erfüllen udn auf Paging oder Multitasking zu verzichten wäre ein so abweichender Entwurf, daß sich das so einfach nicht realisieren lässt.