Suspend to Disk / Hybernate Modus

  • Mal ne Frage an die technisch begabten hier ...


    ist es nicht irgendwie möglich das man son 'Suspend to Disk / Ruhezustand' Modus einbaut in die Dreambox, so wie ich es von anderen PCs her kenne?


    Die Bootzeiten von den Dreamboxen sind ja nicht gerade Guniess-Buch Anwärter, da aber aufgrund des ganzen Zeugs wohl keine grossartigen Verbesserungen mehr zu erwarten sind in Zukunft ... wie wär's dann mit einer "Suspend to Disk" Funktion zum ausschalten der Box, wo alle Informationen über die aktuelle Session und Infos aus dem RAM usw. alles auf der /HDD/ ausgelagert wird. Beim nächsten einschalten der dreambox werden dann lediglich die Informationen vom HDD wieder in den Speicher kopiert, ein paar Dinge geladen / eingerichtet, nen rosa schleifchen drum und schon ist die dreambox wieder online.


    Beim (Win) PC ist sowas ja schon lange Standard und auch die Linux PC's haben sowas alle ...


    Könnte man (rein theoretisch) sowas auch mit der dreambox machen ?

    Theorie ist, wenn man alles weiß, aber nichts funktioniert.
    Praxis ist, wenn alles funktioniert aber niemand weiß warum.

  • Zitat

    Original von Homey
    Könnte man (rein theoretisch) sowas auch mit der dreambox machen ?


    Klar.



    Dabei gilt es allerdings rfc1925 zu beachten (ursprünglich für Netzwerkprobleme gedacht, gilt aber auch hier), insbesondere Punkt 3 und 5-8.

  • Vorgeschlagen wird das bei jeder Box um die immensen Bootzeiten zu reduzieren.


    "Möglich" wäre das bestimmt, wenn die Treiber und enigma/enigma2 das sauber unterstützen würden. Im Moment ist beides nicht der Fall - und da es nur wenig Entwickler bei DMM (2?) gibt wird das wohl nie realisiert werden.

    • Offizieller Beitrag
    Zitat

    Original von LittleBoy
    Vorgeschlagen wird das bei jeder Box um die immensen Bootzeiten zu reduzieren.


    "Möglich" wäre das bestimmt, wenn die Treiber und enigma/enigma2 das sauber unterstützen würden. Im Moment ist beides nicht der Fall - und da es nur wenig Entwickler bei DMM (2?) gibt wird das wohl nie realisiert werden.


    So langsam werden deine Ausführungen auch ein bisschen krude, oder?
    Auf was stützt du eigentlich deine Schätzungen?


    Olove

    Grüße,
    Olove

    "All we need to do ... is keep talking (Stephen Hawking)"


    Ich leiste KEINEN Support per PN/E-Mail, derartige Anfragen werden nicht beantwortet.
    I won't give support via PN/E-Mail and I won't answer such messages.

    • Offizieller Beitrag

    Hi,


    nein, das ganze geht nicht mal eben.


    Der Linux Kernel selber unterstützt sowas nichtmal ordentlich. Es gibt da nen paar externe Projekte.. und die funktionieren bestenfalls auf X86 Architekturen.


    Sieht man doch auch daran, dass alle möglichen Linux Distributionen selber den kernel umpatchen müssen.. weil es eben nix brauchbares im kernel gibt. Und selbst dann gehts wie gesagt bestenfalls auf x86. Also PCs..


    Wenn es mal eben machbar wäre, hätten wir sowas schon gemacht.. und ich hab mich damit auch schon mehrere Stunden beschäftigt und leider nichts brauchbares dazu im Netz gefunden.


    Aber bitte.... der Kernel ist Open Source.. wir werden keinen davon abhalten sowas zu bauen. Die nötigen Modifikationen an den Treibern werden wir gerne vornehmen, wenn der Rest dann funktioniert. Aber ich sehe da wie gesagt ziemlich schwarz.


    cya

  • War ja auch nich böse gemint, hab nich wirklich ahnung davon was Linux/Dreambox/Treiber und dacht einfach mal hier zu fragen.


    Zitat

    Wenn es mal eben machbar wäre, hätten wir sowas schon gemacht.. und ich hab mich damit auch schon mehrere Stunden beschäftigt und leider nichts brauchbares dazu im Netz gefunden.


    Na das reicht mir ja schon :face_with_tongue: Wenn Ihr das nicht hinbekommt, dann wohl eher keiner hier von unseren dreamern.


    Wie gesagt: Dachte ich werf's mal einfach als 'Vorschlag' in den Raum, da ich nix dazu gefunden habe hier :]

    Theorie ist, wenn man alles weiß, aber nichts funktioniert.
    Praxis ist, wenn alles funktioniert aber niemand weiß warum.

    Einmal editiert, zuletzt von Homey ()

  • mir würde eine cryopid für den enigma2 prozess schon reichen, weil das linux selber (Kernel und treiber) laufen eh schon recht schnell.


    Nur das cryopid gibt es leider (noch) nicht für PowePC/Mipsel


    Wobei der architektur spezifische cryopid code nicht so viel ist und man vor allem nichts im Kernel machen muss - Sparc und Alpha Portierungen gibts ja glaube ich schon (also gilt die endian entschuldigung nur begrenzt) - vieleicht mal wenn Ghost am Abend nicht schlafen kann :smiling_face:


    LG
    gutemine

    2 Mal editiert, zuletzt von Lost in Translation ()

  • erwischt :smiling_face:


    Scherz beiseite, ich denke der large file support wäre nur ein problem wenn man während einer aufnahme/abspielen einen Prozess freezen will. Aber ohne threads macht enigma keinen Spass, insofern hast du natürlich recht.


    Wobei das nicht ganz stimmen kann, weil es berichte gibt wo leute auch database software oder webserver gefreezed haben - was ohne threads kaum denkbar wäre, aber so genau habe ich damals auch nicht weitergesucht als ich gesehen habe es gibt (noch) keine mips version.


    Wobei das Konzept nur process space zu dumpen halt einfach logischerweise Limitierungen hat.


    Dann wünsche ich mir halt was kleineres das leichter zu machen sein sollte:


    Im zuge der Bastelei am QuickTV sind mir schon einige sachen aufgefallen:


    enigma2 zählt am Anfang des startens die devices durch, gibt sie dann aber wieder her - daher muss ich in den ersten 10 sec wenn das enigma2 binary startet quicktv unterbrechen, kann es dann aber anschließend rund 30-45 sec lange TV zeigen lassen bevor ich sie 10 sec bevor enigma2 dann die device endgültig wieder haben will (um zu tunen) hergeben muss.


    Wenn sich enigma2 am anfang bei der inventur da mit einem nicht exklusiven zugriff auf die devices zufrieden geben würde - so wie ich verstanden habe wird ja nur für das Tunermanagement ermittelt was für hardware da ist, dann könnte das QuickTV durchlaufen und von 1.5-2 min Bootzeit bis auf 20-25 sec (10-15 am Anfang und 10 am ende) immer schon TV zeigen, so muss ich noch unnötige 10 sec in der Mitte das TV Bild hergeben.


    Also kennt Ihr jetzt meinen Wunsch zum Thema früher TV gucken und ich denke das wäre relativ leicht zu machen und würde auch einige User vom QuickTV freuen :smiling_face:


    LG
    gutemine

    6 Mal editiert, zuletzt von Lost in Translation ()

  • Ich hol diesen Thread mal wieder aus der Versenkung vor, da mich (und andere) das Thema doch sehr interessiert. Hat sich in den vergangenen 3.5 Jahren und mit dem aktuellen Linux-Kernel denn etwas in dieser Richtung getan?

  • 38-40 sekunden von SSD Stick auf einer 8000er bis zum TV Bild hätte ich anzubieten.


    Und das ist ohne Hypernate to disk oder ähnliches - nur mit 'etwas' kreativ angepasstem Bootvorgang :smiling_face:

  • Ja, ich nehme an, dass der Großteil Deines Systems dann auf der früh gemounteten SSD liegen wird und dann diese das restl. System früher hoch bekommt..


    Aber 38..40Sekunden.. Naja. Wenn es < 20Sekunden wären, dann würde ich sagen: "das isses"!


    Aber man sieht ja schon mal, dass hier Handlungsbedarf da ist. Man will Strom sparen, aber man will auch nicht für jedes Anschalten des TV so lange Warten müssen. Da die Abokarten alle in der Dreambox stecken, ist die Dreambox quasi zum TV-Schauen wichtig! Und diese nur im StandBy laufen lassen???

    • Offizieller Beitrag

    Hi,


    nunja.. das Thema gabs schon tausendmal...


    Man kann kein "vollwertiges" Linux haben wollen.. und auch noch schnell booten.


    Irgendwo muss man Abstriche machen.


    Klar.. mit einem "kastrierten" Bootvorgang.. ohne ordentliche Initscripte usw. kann man das alles beschleunigen. Aber damit macht man dann das Package Management auf der Box kaputt.


    Also sooo schlimm wie es hingestellt wird ist es doch bei weitem nicht. Bevor du dich auf Sofa haust drückste die Powertaste holst dann dein Bier.. verrichtest nochmal dein Geschäft.. und wenn Du dann wiederkommst kannste TV schauen. :winking_face:


    cu

  • JEIN - so habe ich vor über einem Jahr auch angefangen - aber es geht auch besser :smiling_face:


    1) musst du JFFS2 loswerden weil es zu lange zum mounten braucht.


    Also machst du das root filesystem auf ext3 statt blöde wir alle Anderen auf neue Kernel und ubifs zu warten weil du nichtmal sicher bist ob du letzteres haben willst.


    2) darfst von 1) du aber nicht mit USB machen weil du sonst fast genauso lange wie vorher beim mounten warten musst bis das device am USB erkannt wird


    Also kaufst du dir einen kleinen 1-2GB SSD SATA stick und machst ihn an den 2. Port so das er /dev/sdb2 wird


    3) Dann schimpfst du ein bisschen auf DMM weil der kernel nicht vom SATA geladen werden kann mangels Bios Unterstützung obwohl du darum gebeten hast. Dann entdeckst du dass es aber praktisch keinen Unterschied macht weil /boot im Flash so klein ist und kaum files drinen das jffs2 für /boot auch kein Problem ist - also entschuldigst du dich geistig wieder und gehst weiter zu Punkt 4)


    4) du pimpst /dev im neuen root filesystem soweit das es alle nötigen device files beinhaltet um wenn die minimalen Treiber geladen sind enigma2 darauf zu starten ohne auf udev warten zu müssen. Und ja, das kann man auch nachher starten, owbohl für das bisschen Hotplug das die Dreambox braucht eigentlich nicht nötig :smiling_face:


    5) wenn du böse bist und noch 2-3 sec schneller sein willst suchst du ein gepatchtes enigma2 das auch ohne tpmd läuft und aus den letzten Open enigma2 sourcen und bösen Treibern gebaut ist - wenn du brav bist musst du halt vor dem enigma2 noch den tpmd starten und die paar Sekunden abschreiben.


    6) Dann schreibst du dir ein initramfs binary in C das dir zuerst die devices anlegt und die module lädt, sowie die Harddisk von /dev/sda1 und das rootfilesystem auf ext3 von /dev/sdb2 mountet dann von dort den tpmd startet und enigma2 auch gleich anwirft und ANSCHLIESSEND den normalen /sbin/init prozess startet der sich dann in aller Ruhe durch die scripte kämpfen darf.


    7) Daraus baust du dir deinen eigenen Kernel mit diesem initramfs


    8 ) Dann debuggst du das ganze so lange bis es WIRKLICH läuft und in < 40 sec TV bild bringt und etwa 25 sec später auch den Rest am laufen hat.


    9 ) Und dann behauptest du einfach das es geht und wartest ob es auch wer anderer schafft :smiling_face:


    10) das Bier kannst du natürlich trotzdem trinken ...


    LG
    gutemine

    12 Mal editiert, zuletzt von Lost in Translation ()

  • Da ich von Linux sowas von wenig Ahnung habe, hoffe ich nun einfach mal darauf, dass sich die DMM Entwickler vom hoffentlich funktionierenden Ansatz von Gutemine inspirieren lassen... Ist mir auch egal, wenn ich mir einen SSD Stick selber als schnellen Flashersatz zur Box (die eh weit mehr kostet) kaufen müßte, wenn es eine solche Lösung meinetwegen auch als Sonder-Image gäbe... oder eben die Bootzeiten der Box generell beschleunigen könnte.

    • Offizieller Beitrag

    Sorry, aber so eine Bastellösung oder ein "Sonderimage" von DMM wird es sicher nicht geben, da steht Kompatibilität an höherer Stelle, den Rest kann man nicht mehr supporten, weil dann bei vielen irgendwas irgendwann irgendwie nicht mehr geht und keiner weiß, warum.

    Grüße,
    Olove

    "All we need to do ... is keep talking (Stephen Hawking)"


    Ich leiste KEINEN Support per PN/E-Mail, derartige Anfragen werden nicht beantwortet.
    I won't give support via PN/E-Mail and I won't answer such messages.

  • Das ist eigentlich keine Bastellösung wenn du einfach sobald du ins Auto steigst den Motor startest und losfährst und nicht erst den Sitz und den Rückspiegel einzustellst und das Radio anmachst :smiling_face:



    Und ich brauche dazu kein Sonderimage - im Moment ist das ein simpler Kernel boot parameter:


    boot=quick


    Und es funktioniert in jedem aktuellen Image.


    Aber mal sehen ... ich wollte nur darauf hinweisen, dass es NICHT so ganz unmöglich ist eine deutliche Verbesserung ohne gröbere Kopfstände mit dem zu schaffen das schon da ist.


    LG


    gutemine

    2 Mal editiert, zuletzt von Lost in Translation ()

  • Also sooo schlimm wie es hingestellt wird ist es doch bei weitem nicht. Bevor du dich auf Sofa haust drückste die Powertaste holst dann dein Bier.. verrichtest nochmal dein Geschäft.. und wenn Du dann wiederkommst kannste TV schauen. :winking_face:

    Dann ist die Tagesschau vorbei :smiling_face:


    Ich finde die Ansätze von Gutemine sehr gut.

    Einmal editiert, zuletzt von svenw1973 ()