Autor |
Nullmodem PC-Direktverbindung |
|
|
|
|
BID = 531729
cholertinu Inventar
Beiträge: 3755 Wohnort: CH
|
|
Zitat :
corvintaurus hat am 1 Jul 2008 10:08 geschrieben :
|
Warum lastet Ll3.exe meine CPU fast zu 100% aus?
ich habe einen PIII M 1000MHz.
|
Das nennt sich HighSpeed-Warten...
ll3 stammt wohl aus einer Zeit, wo Multithreading noch nicht sehr verbreitet war.
Probier doch mal ein kleines C-Programm aus, welches dies Code-Zeile enthält:
Du wirst staunen, wie stark dies die CPU belastet.
[ Diese Nachricht wurde geändert von: cholertinu am 1 Jul 2008 10:33 ] |
|
BID = 531732
corvintaurus Schreibmaschine
Beiträge: 1267 Wohnort: Berlin Tegel
|
|
Sei mir nicht böse, aber das mit dem C-Programm und so verstehe ich nicht! Ich kann leider nicht programmieren. Was bedeutet das mit dem while (1) ?
_________________
1 + 1 = 2 |
|
BID = 531735
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Zitat :
| Was bedeutet das mit dem while (1) ? |
While ist die Anweisung für eine Schleife.
Die Anweisungen in der Schleife, das heisst zwischen while und einem bestimmten Befehl der die Schleife schließt, werden immer wieder ausgeführt, solange die Bedingung hinter while wahr (auch true oder logisch 1) ist. "1" ist immer war, also wird die Schleife endlos ausgeführt. Das belastet die CPU nahezu zu 100% (je nach Programmiersprache).
Im Anhang mal ein Beispiel in XProfan.
Enthält nur zwei Zeilen: "While 1" (Anfang der Schleife) und "Wend" (Ende der Schleife). Das belastet die CPU bei mir zu 50%.
Warnung: Das Programm macht nichts weiter als im Kreis laufen, was die CPU aber stark belastet und u.U. zum Abstürzen des Computers führt. Es kann nur per Taskmanager beendet werden. Vor dem Ausführen alle Daten sichern! BENUTZUNG AUF EIGENE GEFAHR!
Sry, muss sein.
EDIT @cholertinu
Ich bin mir nicht sicher, ob ich dein Post richtig verstanden habe. Meinst du, das Programm benutzt noch Zählschleifen für die Verzögerungen?
[ Diese Nachricht wurde geändert von: bastler16 am 1 Jul 2008 11:03 ]
|
BID = 531742
corvintaurus Schreibmaschine
Beiträge: 1267 Wohnort: Berlin Tegel
|
Danke dir Bastler.
Also ich werde schon auf meinen Esel aufpassen. Gibbet ein Prog, das auch Anfänger verstehen um sich etwas in die Programmierung einzuarbeiten? Bin da wirklich totaler Grünschnabel!
_________________
1 + 1 = 2
|
BID = 531744
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Wenn du Programmieren willst, musst du dich erstmal entscheiden in welcher Sprache. Meine ersten "Programme" hab ich in Javascript geschrieben, dann ganz kurz Visual-Basic und schließlich XProfan. Irgendwann will ich C oder eine der Konsorten lernen, das ist wirklich nützlich (auch für µC).
Früher hat man mit Basic angefangen, heute vielleicht mit Visual-Basic oder Delphi (gar nicht schlecht, aber für einen absoluten Anfänger vielleicht etwas unübersichtlich).
Viel mehr kann ich nicht sagen, meine Programmierkentnisse sind und waren nie sehr ausgereift.
|
BID = 531776
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Sowas wird daraus gemacht, nicht mehr und nicht weniger:
80483cb: eb fe jmp 80483cb
Zitat :
|
Warnung: Das Programm macht nichts weiter als im Kreis laufen, was die CPU aber stark belastet und u.U. zum Abstürzen des Computers führt. Es kann nur per Taskmanager beendet werden. Vor dem Ausführen alle Daten sichern! BENUTZUNG AUF EIGENE GEFAHR!
|
Das stürzt nichts ab und man braucht keinen Taskmanager, um es zu killen.
Die Kontrolle hat immernoch der Kernel und nicht der Userkode.
_________________
|
BID = 531782
cholertinu Inventar
Beiträge: 3755 Wohnort: CH
|
Zitat :
DonComi hat am 1 Jul 2008 14:16 geschrieben :
|
Sowas wird daraus gemacht, nicht mehr und nicht weniger:
80483cb: eb fe jmp 80483cb
|
interessant ist nur, dass das File von bastler16 über 200kByte gross geworden ist.
|
BID = 531785
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Zitat :
DonComi hat am 1 Jul 2008 14:16 geschrieben :
|
Sowas wird daraus gemacht, nicht mehr und nicht weniger:
80483cb: eb fe jmp 80483cb
|
Dissassembler?
Zitat :
|
Zitat :
|
Warnung: Das Programm macht nichts weiter als im Kreis laufen, was die CPU aber stark belastet und u.U. zum Abstürzen des Computers führt. Es kann nur per Taskmanager beendet werden. Vor dem Ausführen alle Daten sichern! BENUTZUNG AUF EIGENE GEFAHR!
|
Das stürzt nichts ab und man braucht keinen Taskmanager, um es zu killen.
Die Kontrolle hat immernoch der Kernel und nicht der Userkode.
|
Nix versteh
Wie willst du das Programm ohne Taskmanager beenden, es öffnet sich kein Fenster oder so?
"Abstürzen" ist schlecht gewählt, sagen wir mal ein älterer PC ist u.U. so überlastet, das er nicht mehr/stark verzögert auf Benutzereingaben reagiert.
EDIT @cholertinu
XProfan schreibt den kompletten Parser (ist das das richtige Wort?) in jede .exe, so kann man mit einer beliebigen .exe ein kompiliertes Programm ausführen. (edit2: natürlich eine von XProfan erzeugte .exe und ein kompiliertes XProfan Prog. Endung prc)
[ Diese Nachricht wurde geändert von: bastler16 am 1 Jul 2008 14:38 ]
|
BID = 531802
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Der wird wohl eher eine komplette (Laufzeitumgebungs-)Bibliothek mit einbinden, damit die Schose überhaupt funktioniert.
Sowas macht man normalerweise eher über shared objects bzw. dynamische Bibliotheken, unter Windows DLL (dynamically linked library), da dann die Bibiothek a) einmalig vorhanden sein kann und b) nur bei Bedarf Teile überhaupt in den Speicher geladen werden, aber ist egal .
Das kommt aus dem Disassembler, stimmt. Ich habe euch auch die anderen kleineren Teile vorenthalten, z.b. die Einstiegspunkte, Initialisierungsroutinen und so weiter. Aber das ist der Knackpunkt.
Zitat :
|
Wie willst du das Programm ohne Taskmanager beenden, es öffnet sich kein Fenster oder so?
|
Na, der Taskmanager sendet den entsprechenden Prozessen ein Signal (z.B. SIGKILL oder SIGTERM), worauf die sich selbst (!) entladen. Man kann diese Signale abfangen und das Programm kontrolliert beenden oder aber keine Abfangroutine konfigurieren. Dann wird das Programm sofort gekillt. Fies ist halt, wenn man in der Abfangroutine nicht drauf reagiert.
Wie gesagt, Programme brauchen keine Oberfläche zum Laufen und im Hintergrund wird um einiges mewhr kommuniziert als der Benutzer an einem ganzen Tag auf der Oberfläche überhaupt klicken kann .
_________________
|
BID = 531803
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Überzeugt, du verstehst deutlich mehr von dem ganzen Kram als ich.
@corvintaurus
Lass dich von dem ganzen Fachchinesisch nicht abschrecken.
|
BID = 531806
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Naja, es war nicht alles so präzise, z.B. hat der Kernel die Möglichkeit, Programme zu killen. Was ich ursprünglich sagen wollte: das, was der Taskmanager macht, kann man auch in die "Konsole" eingeben, mit gleichem Erfolg .
_________________
|
BID = 531807
corvintaurus Schreibmaschine
Beiträge: 1267 Wohnort: Berlin Tegel
|
Zu spät...bin schon abgeschreckt! Ich versuche gerade ein Flachbandkabel an ein Slim FDD anzulöten. (20Adern)....und dann habe ich auch noch nen dreher drinnen gehabt...! Und dazu noch 29Grad im Zimmer...
_________________
1 + 1 = 2
|
BID = 533231
ElektroNicki Inventar
Beiträge: 6429 Wohnort: Ugobangowangohousen
|
foobar2000 geht mit der vorhandenen Rechenleistung sehr sparsam um.
Läuft leider meines Wissens nur unter 2k/xp, also wohl nicht auf deinem lt.
Obwohl....
Oh, da klingelt was,
Jawoll: Dosamp!
_________________
|
BID = 533232
ElektroNicki Inventar
Beiträge: 6429 Wohnort: Ugobangowangohousen
|
|