Quantcast
Channel: Das deutsche Synology Support Forum
Viewing all articles
Browse latest Browse all 155959

Idee eines neuen Hibernation-Mechanismus

$
0
0
Hallo zusammen,

auch ich bin einer der vom Winterschlafmodus (Hibernation) geplagten Anwender. Die Situation ist nach wie vor sehr unbefriedigend, nachdem Synology die große Werbetrommel für diese Funktionalität gerührt hat. An diesem Dilemma wird sich meines Erachtens auch so lange nichts ändern, bis die Entwickler ihre eigene Vorgehensweise hinterfragen. Auf Funktionsweise des Festplattenstromsparmodus muß ich nicht großartig eingehen, da dieser auch nur indirekt Gegenstand dieses Themas ist. Es geht vielmehr um die Umsetzung des Schlafzustands als Erweiterung des Festplattenstromsparmodus, indem dieser 60 Sekunden nach letzterem auslöst. Hier liegt meines Erachtens das eigentliche Problem, da der Anwendungsfall des Schlafmodus ein grundsätzlich anderes Ziel als der Festplattenruhemodus verfolgt.

Wärend sich der Festplattenstromsparmodus lediglich auf den physischen Datenträgerzugriff bezieht, ist der Schlafmodus der Diskstation primär aus der Anwenderperspektive beziehungsweise aus den Anwendungsfällen der Diskstation desselbigen zu betrachten. Das heißt, die Diskstation soll sich schlafen legen, wenn ich sie entweder nicht benutze oder nicht gerade mit zeitabhängigen oder aktiven Aufgaben (geplante oder bereits laufende aber zeitlich befristete Aufgaben) betraut habe. Daher sollte der Schlafmodus konzeptuell genau invers aufgebaut werden, soll meinen, die Diskstation soll nach Ablauf eines benutzerdefinierten Timers in den Schlafzustand gehen (unabhängig vom letzten Festplattenzugriff).

Daher muß der "Dienst", der den Schlafmodus steuert, im Userspace oder Kernmodus eine minimale API exportieren, in etwa:
  1. Sperren/Entsperren (Lock/Unlock) des Timers auf Prozeßebene
    • erlaubt Prozessen den Schlafzustand für eine bestimmte Zeit zu verhindern, solange sie eine Sperre halten (z.B. Audio- oder Videowiedergabe, …)
    • Entsperrfunktion (Unlock) erlaubt den Wiederanlauf des Timers, um den Schlafmodus wieder zuzulassen
    • der Timer läuft nur, falls kein Prozeß eine Sperre aquiriert hat
    • falls ein Prozeß abstürzt, muß eine gegebenenfalls gehaltene Sperre automatisch freigegeben werden
  2. Reset-Trigger für Timer
    • erlaubt einem Prozeß, einen Timer-Reset (Rücksetzung auf Startwert) auszulösen. Dies ist beispielsweise für einen externen Dateizugriff über das Netzwerk sinnvoll (z.B. BMB, NFS, …)

Als weitere Stufe könnte man geplante Aufgaben/Tasks in zwei Gruppen unterteilen, wichtige und unwichtige. Die wichtigen Aufgaben führen zu einem Aufwachen aus dem Schlafmodus (z.B. TimeBackups). Unwichtige führen dagegen nicht zu einem Aufwachen der Diskstation, sondern werden solange verzögert, bis diese durch ein anderes Ereignis aufwacht.

Ich habe dies auch mal Synology unterbreitet und hoffe, daß sie zumindest darüber nachdenken.


Viele Grüße,
Süno42

Viewing all articles
Browse latest Browse all 155959


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>