Gibt es eine Software oder Hardware, mit der Sie die Zeit anhalten, verlangsamen, beschleunigen oder sogar rückwärts fahren können?

4717
tjrobinson

Offensichtlich spreche ich von Zeit in Bezug auf die PC-Uhr und nicht von Echtzeit .

Wir testeten eine Anwendung, die wir bei der Arbeit entwickelt hatten, indem wir die Uhr vorwärts und rückwärts eingestellt hatten, um verschiedene Szenarien zu simulieren. Ich begann zu überlegen, wie nützlich es wäre, wenn Sie die Rate (?) Der Systemuhr mit einer genaueren Kontrolle anpassen könnten. Sie können also in 30 Sekunden eine Minute oder in 30 Sekunden eine Tagesschau machen und beobachten, wie das Programm, das Sie entwickeln, mit den Änderungen von Datum und Uhrzeit zurechtkommt.

Gibt es eine solche Software?

Ich würde gerne wissen, ob jemand Software oder Hardware kennt, mit der Sie einige oder alle der oben genannten Aufgaben ausführen können.

11
Fragen Sie Doctor Who, was er in der TARDIS führt. Rob vor 14 Jahren 5
Nur ein Hinweis - Wenn sich dieser Computer in einer Domäne befindet, können Sie sich darauf verlassen, dass Flakey mit Netzwerkfreigaben und anderen Kerberos-Komponenten arbeitet. Wenn Sie die Uhrzeit so ändern, dass sie nicht mit dem PDC-Emulator übereinstimmt, können Kerberos-Tickets Schaden anrichten. MDMarra vor 14 Jahren 3
@ Rob, ich wette, es ist Gentoo. Phoshi vor 14 Jahren 0

4 Antworten auf die Frage

6
Keck

Dies beschleunigt nicht unbedingt die Zeit, kann jedoch für das Debugging hilfreich sein.

Nirsofts RunAsDate

Von der Website:

RunAsDate ist ein kleines Dienstprogramm, mit dem Sie ein Programm in dem von Ihnen angegebenen Datum und der angegebenen Uhrzeit ausführen können. Dieses Dienstprogramm ändert nicht das aktuelle Systemdatum und die aktuelle Uhrzeit Ihres Computers, sondern fügt nur das von Ihnen angegebene Datum und die Uhrzeit in die gewünschte Anwendung ein. Sie können mehrere Anwendungen gleichzeitig ausführen. Jede Anwendung arbeitet mit unterschiedlichen Datums- und Uhrzeitangaben, während das tatsächliche Datum und die Uhrzeit Ihres Systems normal ausgeführt werden.

1
quack quixote

Du könntest es immer schreiben. (Unterstützt CMD noch die Befehle DATE / TIME?)

Jedes Programm, das Sie verwenden würden, würde wahrscheinlich funktionieren, indem Sie die Zeit sowieso in kleinen Schritten zurücksetzen. Wenn Sie keine extrem feine Steuerung benötigen, kann ein Batch-Skript (oder Perl :) diese Änderungen ziemlich leicht steuern.

Gotchas: Um diese Lösung nutzen zu können, müssen NTP-Aktualisierungsdienste deaktiviert werden, damit das Betriebssystem die Uhr nicht immer auf den ursprünglichen Wert zurücksetzt.

In WinXP unterstützt CMD immer noch beide Befehle. Isxek vor 14 Jahren 0
thx, ich bin auf absehbare Zeit in Ubuntu gebootet und konnte es nicht überprüfen. quack quixote vor 14 Jahren 0
Ich suchte nach etwas mehr Analogem als dem. Fast wie ein Rad an der Vorderseite des Computers, das Sie drehen könnten, um die Uhr zu verlangsamen und zu beschleunigen. tjrobinson vor 14 Jahren 1
@tjrobinson: Dafür musst du auch ein paar Hardware-Hacks machen. klingt wie ein cooles Projekt. :) quack quixote vor 14 Jahren 1
1
quack quixote

Ich habe einen Verweis auf ein altes Programm namens ASpeeder entdeckt . Ich habe keine Ahnung, wie es funktioniert, ob es funktioniert oder ob es sich um einen uralten Betrugsort handelt. Versuchen Sie es auf eigene Gefahr. Hagel Eris.

Es ist Payware (20 US-Dollar). Schauen Sie sich das an, und überprüfen Sie den Download vor der Installation auf Viren.

A Speeder 2008.4 Features (von der Website):

  • Ändern Sie die Geschwindigkeit von Desktop-Spielen oder Online-Spielen
  • Steuern Sie die Anwendungsgeschwindigkeit und die Windows-Geschwindigkeit
  • Einfach zu bedienen, ziehen Sie einfach die Trackleiste oder drücken Sie den Hotkey
  • Von 1/32 bis 32-facher Geschwindigkeit
  • Von 1/256-fache bis 256-fache Windows-Geschwindigkeit
  • Die Geschwindigkeitseinstellung wird automatisch gesperrt
  • Bieten Sie drei Arten von Methoden an, um die Geschwindigkeit zu ändern

Ich habe ein ähnliches Programm. Ich glaube, es wurde entwickelt, um eine langsamere CPU-Taktrate für die Ausführung älterer Programme (meistens Spiele) zu simulieren, deren Reaktionszeit auf der CPU-Uhr basiert. Das Programm hatte ich nicht mit dem Datum und der Uhrzeit des Systems verwechselt. Kenneth Cochran vor 14 Jahren 0
klingt wie genau das, wofür es entwickelt wurde Aber wer weiß, was sich unter der Registerkarte "Optionen" befindet, ist möglicherweise auswählbar. quack quixote vor 14 Jahren 0
Wenn jemand eine Alternative kennt, die unter WinX funktioniert, würde ich gerne davon hören! Dewi Morgan vor 6 Jahren 0
1
Eroen

Auf Unix-Systemen ist libfaketime die de facto Standardlösung für dieses Problem in Software. Es führt eine Art Man-in-the-Middle-Operation zwischen Ihrer Anwendung und der Zeitbibliothek des Systems durch. Die Anforderungen werden an das System weitergeleitet, die Antworten werden jedoch nach Bedarf geändert. Es ändert auch die Ergebnisse von stat()Aufrufen, also Änderungszeiten für Dateien & c. sind auch modifiziert.

Die Einstellungen werden mit Umgebungsvariablen vorgenommen, daher müssen Sie möglicherweise etwas darüber erfahren, wenn Sie nicht bereits mit deren Arbeitsweise vertraut sind.

libfaketime unterstützt relative und absolute Offsets, Stopp- und Laufzeit sowie Beschleunigung oder Verlangsamung. Ich weiß nicht, wie man rückwärts läuft.

Beachten Sie, dass die aktuelle Version Sekunden vorgibt, die die höchste Auflösung der Zeit ist, die es gibt, und Teile der Antworten in Sekundenbruchteilen unverändert an die Anwendung weiterleitet. Wenn Sie also die Uhr auf die halbe Geschwindigkeit verlangsamen, wird ein sekundenschnelles Programm, das sehr schnelle Zeitanrufe durchführt, die ganze Sekunde zweimal hintereinander durchlaufen und nicht nur zweimal doppelt so lange. Wenn die Uhr angehalten ist, sieht die Anwendung eine zufällige Zeit innerhalb der ausgewählten Sekunde.

Leider ist Github heute inaktiv, daher sind die Dokumente derzeit nicht verfügbar, aber das wird wahrscheinlich bald behoben.

Bearbeiten:

Mit Github Backup habe ich es ausprobiert und fand, dass der Code für die Geschwindigkeitsänderung allgemein genug ist, damit er mit negativen Werten oder irgendetwas, das sonst akzeptiert wird, gut funktioniert atof().

Es stellte sich jedoch ein anderes Problem heraus: Für die Änderung der Geschwindigkeit ist neben der tatsächlichen aktuellen Zeit und dem gewünschten Zeitversatz ein Zeitursprung erforderlich. Dieser Ursprung wird für Unterprozesse unabhängig festgelegt, so dass (beim Rückwärtsfahren mit Nenndrehzahl), wenn der übergeordnete Prozess um eine Minute zurückgezogen wurde, ein neu erzeugter Unterprozess die aktuelle Uhrzeit zwei Minuten später als der übergeordnete Prozess sieht.