Speicherwechsel und Einfrieren des Betriebssystems

432
seb-mtl

In einem Szenario verwendet meine schriftliche Anwendung mehr Speicher als auf einem Computer (der 16 GB hat). Unter OSX scheint alles wie erwartet zu funktionieren und das Betriebssystem läuft sogar noch an die Speicherbarriere. Unter Windows friert das Betriebssystem ein und ich möchte klären, was sich hinter den Kulissen abspielt. Meine Anwendung läuft im Benutzermodus, daher würde ich nur eine massive Verlangsamung meiner Anwendung erwarten. Aber warum friert mein Betriebssystem ein? Die Threads und der Arbeitsspeicher des Betriebssystems sollten eine höhere Priorität haben und das Betriebssystem sollte zumindest nicht für immer hängen bleiben. Ich verwende Win 7 für diesen Test und habe es noch nicht unter Windows 8 oder 10 versucht. Wie würden Ihre Debugging-Ansätze aussehen? Jede von Ihnen empfohlene Ressource würde mir helfen, dies zu verstehen?

0
Haben Sie Antivirus- oder andere Sicherheitssoftware, die Datenträgerzugriffe ermöglicht? Versuchen Sie es zu deaktivieren. Ich hatte noch nie ein Betriebssystem eingefroren (konnte immer noch die Maus bewegen und den Ressourcenmonitor starten), wenn in Windows 7 stark gewechselt wurde. Sie können auch versuchen, die Priorität Ihres Prozesses mit Process Explorer zu verringern, was dazu führen sollte, dass andere Apps, die Sie verwenden, nicht langsamer werden ausgeführt werden, wodurch das Debuggen vereinfacht wird. mihi vor 9 Jahren 0
Was benutzt du? F #, Java, C? Was ist Ihr Editor, kann er überhaupt debuggen? Was schreiben Sie - Mikrocontroller für Desktop, Web und USB-Schnittstelle? Alle oder alle dieser Punkte können verwandt sein, insbesondere wenn das, was Sie verwenden, interpretiert wird und kein kompilierter Code. Ich bin kein Programmierer, aber ich weiß, dass interpretierter Code einen höheren Stapel an Speicherverwaltung erfordert als kompilierter Code. Daher könnte es eine Antwort und Tools geben, um Ihre Probleme zu verstehen - insbesondere auf Cross-Plattform-Plattformen. arch-abit vor 9 Jahren 0
Es ist eine in C ++ geschriebene Desktopanwendung, und ich verwende VS2012. Der Prozess ist 'Below Normal 6'. Es friert immer noch ein, wenn es zu 'Background: 4' gedreht wird, aber nur für eine Minute, dann kann ich den Prozess über taskmgr beenden. Die Spitze der virtuellen Arbeitsspeicherbytes liegt bei 32 GB auf einem Computer mit 16 GB Arbeitsspeicher. seb-mtl vor 9 Jahren 0
Ah, API-OSx beendet GUIs anders als Windows. Ihr Aufruf an exit () (falls vorhanden) könnte der Täter sein. Das letzte Mal, dass ich in geschweiften Klammern programmierte, war in den 1990ern. In diesen Tagen schreibe ich nur noch. arch-abit vor 9 Jahren 0

0 Antworten auf die Frage