Linxu auf CF-Karte / Frage zu Bootdisk-Howto

Post Reply
Message
Author
Onkel Otto

Linxu auf CF-Karte / Frage zu Bootdisk-Howto

#1 Post by Onkel Otto »

Hallo.

Ich habe momentan Zeit (wg. Kurzarbeit) und möchte meine Linux-Kenntnisse erweitern. Daher habe ich mir ein kleines Projekt überlegt: einen Standalone MP3-Player fürs Wohnzimmer. (Ob der jemals im Wohnzimmer stehen wird, ist mal egal. Ich lerne am besten neue Dinge, wenn ich sie mit einem konkreten Ziel verbinde!)

Der Player soll von CF-Karte starten und eine C++ Oberläche laden, die ein LC-Display, Tasten und eine Soundkarte bedient. Musikdaten werden per NFS gemountet.

Zum Anfang habe ich das Bootdisk-Howto gelesen und einiges verstanden. Allerdings habe ich jetzt eine Frage:

Der Kernel wird geladen, init gestartet und Module etc geladen. Bei einer normalen Distribution wird jetzt getty gestartet, um den Zugriff auf das System zu sichern.

Kann ich an dieser Stelle schon mein C++ Programm ausführen lassen und z.B. in diesem Mplayer aufrufen? Ich werde wahrscheinlich keine Eingaben über die Tastatur oder Ausgaben auf den Bildschirm machen können, oder?

Ich hoffe, meine Erklärung/Frage war halbwegs verständlich.

MfG Onkel Otto

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#2 Post by Janka »

C++-Oberfläche? C++ ist eine Programmiersprache, kein Tookit. Willst du überhaupt X verwenden, oder gleich den Framebuffer -- auch dafür gibt es Toolkits, z.B. QtEmbedded.

Falls du X verwenden willst, musst du irgendwo im Bootprozess "X" aufrufen statt getty/xdm. Dann bekommst du die grafische Oberfläche. Danach im Bootscript dein Programm starten.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

Onkel Otto

#3 Post by Onkel Otto »

Hierbei habe ich mich vielleicht unklar ausgedrückt:

Mein Gedanke war (unter C++) ein Programm zuschreiben, dass als Playeroberfläche fungiert. Diese Software reglet alle Ein- und Ausgaben, Musik abspielen usw.

Meine Frage bezieht sich jetzt auf den Punkt beim Booten, an dem normalerweise die Konsole gestartet wird, damit man sich einloggen kann.

Wenn ich jetzt statt der Konsole meine Software starten lasse (falls das so funktioniert) habe ich zwar keine Möglichkeit über Tastatur und Bildschirm an dem Rechner zuarbeiten, soll in diesem speziellen Fall aber auch nicht.

Allerdings sollte ich (von diesem Programm aus) die Möglichkeit haben, auf das Dateisystem zuzugreifen, andere Programme zu steuern und von z.B. LIRC Befehle entgegen zu nehmen.

Nochmal, das ganze soll später (hoffentlich) standalone laufen, quasi als embedded Linux auf einem PC.

MfG Onkel Otto

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#4 Post by Janka »

Onkel Otto wrote: Wenn ich jetzt statt der Konsole meine Software starten lasse (falls das so funktioniert) habe ich zwar keine Möglichkeit über Tastatur und Bildschirm an dem Rechner zuarbeiten, soll in diesem speziellen Fall aber auch nicht.
Du hast normalerweise *6* gettys laufen, nicht eins. Du kannst in inittab eintragen, welches Programm auf welcher Konsole automatisch die Schleife drehen soll. Auf 1..6 ist das getty, auf 7 xdm. Guck dir /etc/inittab mal an.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

Post Reply