Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
hanshampel
Anmeldungsdatum: 15.12.2004 Beiträge: 5 Wohnort: Dorf
|
Verfasst am: 14.01.2007, 22:19 Titel: Wieviel Speicher benötigt mein Programm... |
|
|
Wie bekomme ich heraus wieviel Speicher meine mit Quickbasic 4.5
erstellte .exe zur Laufzeit benötigt? Ich arbeite mit DOS
also n i c h t in der DOS-Box von Windows.
Vielleicht ein geschickter Einsatz von FRE ?
Es grüßt
Hans-Georg |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 14.01.2007, 22:34 Titel: |
|
|
Der Speicher ist IMO schwer rauszufinden, weil ja zusätzlivh noch qbasic.exe / qb.exe läuft. oft ist es ein großer teil vom konvetionellen speicher (also oft 400-500k von 640k) _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 14.01.2007, 22:36 Titel: |
|
|
Öhm...wozu brauchst du eine so genaue Angabe aber überhaupt, bei einem Prozessor-Mode, der nur 1MB unterstützt?  _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
hanshampel
Anmeldungsdatum: 15.12.2004 Beiträge: 5 Wohnort: Dorf
|
Verfasst am: 14.01.2007, 22:46 Titel: |
|
|
Ich rufe 'meinprogramm.exe' aus einem anderen Programm heraus auf
(dieses Programm ist nicht von mir,bietet aber diese Möglichkeit an)
Vor dem Aufruf Teilt mir dieses Programm- welches im Speicher bleibt-
mit, das noch 130 kb Speicher frei seien.
Jetzt frage ich mich wie eine genauere Bestimmung des Speichers möglich ist
den mein Programm benötigt, damit es z.Beispiel zu keinem Absturz kommt.
Hans-Georg |
|
Nach oben |
|
 |
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 15.01.2007, 14:24 Titel: |
|
|
Für den Anfang gucken, wie groß das Prog selbst ist. Das muss auf alle Fälle in den Speicher. Und danach werden Variablen benötigt. Da richten sich die Größen nach dem Datentyp. |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 15.01.2007, 15:13 Titel: |
|
|
Hallo.
Dein Programm stürzt nicht ab, wenn zu wenig Speicher vorhanden ist. DOS gibt dann nur eine Fehlermeldung à la "Zu wenig Arbeitsspeicher." aus.
Ich weiß ja nicht, in wie weit du dich mit dem MZ-EXE-Header auskennst, aber da is' genau drin festgelegt, ab wieviel Speicher dein Programm gestartet werden darf, damit's läuft.  _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 15.01.2007, 18:30 Titel: |
|
|
Hi,
wenn ich mal kurz aushelfen darf(bevor die 'Suchmaschine' wieder zuschlägt ):
http://www.deinmeister.de/w32asm5.htm
(Ich hab nach MZ-Headerformat gegoogelt..)
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 15.01.2007, 20:22 Titel: |
|
|
es gibt noch eine möglichkeit, es herauszufinden, die ich mal probiert habe und die auch *relativ* genau ist, aber manchmal zu sensitiv...
rechtsklick auf deine kompilierte exe-datei (mit qb, nicht qbasic erstellen!), eigenschaften, registerkarte speicher, konventionellen speicher von automatisch von 640k aus immer weiter runtergehen lassen. wenn das prog nicht mehr geht, hast du den minimalwert unterschritten. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
hanshampel
Anmeldungsdatum: 15.12.2004 Beiträge: 5 Wohnort: Dorf
|
Verfasst am: 17.01.2007, 02:58 Titel: Danke für die Antworten.... |
|
|
Der Beitrag von Jojo scheint mir
am praktikabelsten um zu einem
Ergebnis zu kommen.
Vielen Dank, gute Idee.
PMedia - das hilft mir auch schon
weiter.
Mao - Um im header festzulegen ab
wann gestartet werden darf muß
ich ja eben die benötigte Größe
wissen, oder mißverstehe ich Dich
da jetzt und Du meinst, es ist im
header zu erkennen wieviel
Speicherplatz das Programm
benötigt? Das werd ich mir mal
genauer anschauen. Danke für den
Tipp.
ytwinky- Danke für den Link
hanshampel |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 17.01.2007, 15:52 Titel: |
|
|
Jo, also wenn der Header korrekt ist (dürfte natürlich fast immer der Fall sein ), steht in diesem der Wert an Paragraphen die benötigt werden. In dem Fall ist 1 Paragraph=1 Segment=16 Bytes. Also die Anzahl der Paragraphen mit 16 multiplizieren und dann durch 1024 dividieren, dann hast du die Anzahl an Kilobytes, die gebraucht werden. Allerdings ist mir da kein Tool bekannt, dass die Header-Infos von MZ-EXEn ausliest.
Also am Besten einen Hex-Editor nehmen.  _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
|