Fuer diese Geschichte braucht man folgendes: o Einen Mikrokontroller der an die serielle Schnittstelle ein paar Bytes schreiben kann. Ein Umfangreiches Beispiel findet sich auf http://www.eblux.de/index.php?link=elektronik&sublink=avrboard o Ein BSD System. Mit Linux habe ich es nicht ausprobiert. Der verwendete Mikrokontroller war ein AT90S8515, wer den code fuer den Chip braucht, kann gerne an coden@int80h.de mailen. Beschreibung: Das beinhaltete C Programm ist im Prinzip sehr simpel. Der Chip sendet 3 verschiedene Bytes, 0, 1 und 6. Welches Byte gesendet werden kann, kann man z.B. ueber Taster bestimmen. Die ankommenden Bytes werden von dem Programm gelesen, je nach dem welches Byte gelesen wird sendet das Programm dem init Prozess ein Signal zum Herunterfahren, neustarten oder versetzt es in den single user mode. Man kann noch logins vermeiden oder die ttys(5) neu einlesen, das habe ich aber noch nicht implementiert. Zusaetzlich wird der Speaker des Computers einmal beim neustarten, zweimal beim Eintritt in den Single-User mode und drei mal beim Neustarten getaetigt. Vier mal bei einem Fehler. Die Zahlen 0, 1 und 6 wurden gewaehlt weil es die Runlevels von FreeBSD sind, init(8): Run-level Signal Action 0 SIGUSR2 Halt and turn the power off 1 SIGTERM Go to single-user mode 6 SIGINT Reboot the machine c SIGTSTP Block further logins q SIGHUP Rescan the ttys(5) file D.h. die Zahlen die der Mikrokontroller sendet koennen andere sein, sie muessen nur im code veraendert werden (src/halt.c) Die Runlevel c und q sind im Moment nicht implementiert. Das Programm liest standardmaessig das Device /dev/cuaa0, falls man es am "COM2" angeschlossen hat, so kann man das natuerlich in "src/avr.h" unter #define DEVICE aendern. Zweck: Mit diesem kleinen C Programm wollten ein Freund (www.eblux.de) und ich simpel ausprobieren wie man ein Unixsystem ueber einen Controller steuern kann. Computer ohne Tastaturen oder Monitore koennen somit leicht neugestartet werden ohne sich mit ssh einlogen zu muessen oder auf Remote Dienste angewiesen zu sein. Es befindet sich noch in der aller ersten Version, laeuft aber recht stabil. Deswegen bitte ich um Feedback, falls es jemals mal benutzen sollte :-) Viel Spass Leute.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.