Hallo,
Ich wollte mal ein paar Experten dazu befragen, bevor ich mich an die Konzipierung mache.
Mein Kernel hat bisher Keyboard und einen einfachen Bildschirm-Support (also das einfachste). Was ich wollte, war, den Kernel sofort in einen Interpreter für meinen LISP-Dialekt überzuleiten, so dass die Konsole praktisch der Interpreter ist. Dann sind die Befehle praktisch LISP-Funktionen.
Alle LISP-Daten sind natürlich Listen, die ich mit einen GC verwalten wollte. Dieser alleine Wäre kein Problem, da alle Elemente der verketteten Liste gleich groß sind und ich daher die Elemente aus einem großen Array picken kann, verwaltet mit einer Bitmap.
Aber ich brauche auch String-Daten - eben für strings, symbolnamen und die Closures. Ich weiß nicht genau, wie ich diese verwalten soll.
Sollte ich vielleicht 2 GCs basteln, einer für listen und einer für "sonstiges"? Oder einen komplizierten, der alle Datentypen verwalten kann (auch wenn ich nicht genau weiß, wie dieser aussehen sollte). Ich wollte nur fragen, ob ihr dazu professionelle Meinungen habt, die mir helfen könnten.
Danke.