AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Verhinden des Memory ausgelagert wird
Thema durchsuchen
Ansicht
Themen-Optionen

Verhinden des Memory ausgelagert wird

Ein Thema von gsh · begonnen am 11. Nov 2007 · letzter Beitrag vom 21. Nov 2007
Antwort Antwort
Seite 3 von 3     123   
Uwe.F.

Registriert seit: 19. Apr 2005
56 Beiträge
 
Delphi 7 Enterprise
 
#21

Re: Verhinden des Memory ausgelagert wird

  Alt 14. Nov 2007, 19:10
Und ... was bedeutet



das?
Uwe
  Mit Zitat antworten Zitat
Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#22

Re: Verhinden des Memory ausgelagert wird

  Alt 14. Nov 2007, 19:19
Das war ein push von mir
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.135 Beiträge
 
Delphi 12 Athens
 
#23

Re: Verhinden des Memory ausgelagert wird

  Alt 19. Nov 2007, 08:28
also, ich hab mir mal den Democode aus'm PSDK nach Delphi übersetzt
(mein Englisch ist übrigens auch sehr bescheiden )
und es funktioniert wunderbar (jedenfalls wenn man noch eine "normale" Speicherresservierung als Reserve mit einbaut),
aaaaber dieses ist in einem normalem Programm sogut wie unnütz,
denn wie im MSDN/PSDK steht, muß dieses auch noch im Windows aktivert sein
und ich denk mal bei 99% der PCs ist dieses nicht der Fall.

Zitat:
An application must have the Lock Pages in Memory privilege to use AWE.
gut, die kann sich das Programm "leicht" besorgen,
Zitat:
To obtain this privilege, an administrator must add Lock Pages in Memory to the user's User Rights Assignments.
aber hier wird es schwerer...


allerding weiß ich jetzt nicht obWindows den speicher nicht doch auslagern kann
und vorallem was passiert beim Ruhezustand/Hypernate, weil da muß windows doch auslagern, oder es geht was nicht
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
hathor
(Gast)

n/a Beiträge
 
#24

Re: Verhinden des Memory ausgelagert wird

  Alt 19. Nov 2007, 09:11
Es gibt auch noch die Möglichkeit, eine RAMDISK einzurichten.(MS-RAMDRIVE)
Maximale Grösse: 32 MB.

A ramdisk can perfectly be used to store :

- web content of web servers.
- temporary index files and tables of database servers ( MS-SQL-Server , MySQL , ...).
- temporary files ( TEMP and TMP environment variable ) and "Temporary Internet Files".
- the scratch disk for Adobe (R) Photoshop (R).
- games and installed programs (1). The startup times of programs may decrease drastically !
- audio and video capture / editing.
- creation and playback of slide shows.
- data that has to be written to CD , to prevent underrun during the burn process.
- as storage of the "ReadyBoost" cache on Vista.
- all kinds of data that may be lost ( or MUST be lost for security reasons ) at shutdown.

http://support.microsoft.com/kb/834886/de
http://www.winfaq.de/faq_html/Conten...?h=tip1260.htm

http://www.ramdisk.tk/
RAMDisk , depending on the RAM memory size that the OS supports , to up to 64 GB.
  Mit Zitat antworten Zitat
Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#25

Re: Verhinden des Memory ausgelagert wird

  Alt 19. Nov 2007, 16:03
ah danke des mit der Ramdisk werd ich mir mal anschauen
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.135 Beiträge
 
Delphi 12 Athens
 
#26

Re: Verhinden des Memory ausgelagert wird

  Alt 21. Nov 2007, 12:19
Zitat von gsh:
der erste absatz sagt mir eigtlich schon des dieses AWE system eigentlich nur dafür da ist die 2GB grenze bei XP zu umgehen
Ja, es ist unter anderem dafür entwickelt worden, aber man kann es auch für Angelegenheiten wie diese hier nutzen.

Aber mal eine Frage, wofür genau benötigst du dieses? (für was und vorallem wieviel)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#27

Re: Verhinden des Memory ausgelagert wird

  Alt 21. Nov 2007, 17:29
Zitat von gsh:
ah danke des mit der Ramdisk werd ich mir mal anschauen
also ich hab mir des mal angeschaut ist ganz cool die ramdisk aber für mich total ungeignet da ich keinen eigenen Treiber mitführen möchte (Programm sollte von USB-Stick startbar sein)


Zitat von himitsu:
Ja, es ist unter anderem dafür entwickelt worden, aber man kann es auch für Angelegenheiten wie diese hier nutzen.
Aber mal eine Frage, wofür genau benötigst du dieses? (für was und vorallem wieviel)
Naja es soll halt ein schneller Pufferspeicher sein der dann auf die Festplatte geschreiben wird und wenn der Buffer ausgelagert wird dann muss die festplatte 3 mal so viel arbeiten als wenn er vom ram kopiert wird.

Nicht viel ... 5 MB vllt. des muss ich erst testen was am besten ist
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.135 Beiträge
 
Delphi 12 Athens
 
#28

Re: Verhinden des Memory ausgelagert wird

  Alt 21. Nov 2007, 18:40
Zitat von gsh:
Naja es soll halt ein schneller Pufferspeicher sein der dann auf die Festplatte geschreiben wird und wenn der Buffer ausgelagert wird dann muss die festplatte 3 mal so viel arbeiten als wenn er vom ram kopiert wird.
Normal ist gut ... was für Daten sind es denn nun, die sooo wichtig sind, daß sie nichtmal einen Buchteil einer (Milli)Sekunde warten können.

Das Problem ist halt, daß erstmal nicht jeder gleich damit arbeitet (drum hab ich auch den den übersetzten Code nicht gepostet)
Stell dir mal vor jeder fängt plötzlich damit an ... und ganz schnell wäre Windows am Abstürzen, weil ihm der Speicher ausgeht.
dieser Rechner hier hat z.B. keine Auslagerungsdatei (wegen Problemen mit einer zulangsamen Festplatte) und nur 500 MB RAM, also alles nur physischen Speicher und du kannst mir glauben, ich hab schon oft erlebt wie hier alles am verreckn ist, wenn der freie RAM ausgeht

schneller Puffer: wenn du oft genug und/oder mit nicht all zu großen Pausen auf deinen Speicher zugreifst, dann lagert den Windows auch (wenn möglich) nicht aus (dieser bleibt also auch ohne das zu tun im RAM).

Und was das AWE betrifft: wie gesagt, dieses muß erst vom Admin im Windows aktiviert werden (standardmäßig ist es auf allen Windowssystemen abgeschaltet)
heißt: im Gruppenmanager das häckchen setzen, Rechner neu starten und erst dann haben Programme die Möglichkeit dieses zu nutzen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#29

Re: Verhinden des Memory ausgelagert wird

  Alt 21. Nov 2007, 19:07
Naja ich werds doch so lassen und darauf hoffen des windows es im speicher lässt.

Jaja und des Prob ist nicht die Zeit sondern:

Wenn der Buffer ausgelagert wird
Daten -> Buffer (wird auf festplatte ausgelagert) =
schreibzugriff auf festplatte um buffer auszulagern
Buffer -> Auf Festplatte kopieren (in die richtige datei)
lesezugriff um ausgelagerten buffer zu lesen
schreibzugriff um buffer in datei zu schreiben


Wenn der Buffer NICHT ausgelagert wird
Daten -> Buffer (steht im Speicher) =
buffer bleibt im ram
Buffer -> Auf Festplatte kopieren (in die richtige datei)
lesezugriff vom ram um buffer auszulesen (geht viel schneller da die fesplatte sowieso genug zu tun hat)
schreibzugriff auf festplatte um buffer in datei zu schreiben


Es geht darum bei großen und vielen Dateien die Festplatten performance besser zu nutzen
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.135 Beiträge
 
Delphi 12 Athens
 
#30

Re: Verhinden des Memory ausgelagert wird

  Alt 21. Nov 2007, 19:32
Zitat von gsh:
Es geht darum bei großen und vielen Dateien die Festplatten performance besser zu nutzen
genau dafür versuch ich es auch zu nutzen (Thema FileSplitter), allerdings wird da der Speicherblock nur "kurz" benötigt.
Außerdem prüfe ich vorher, ob es das System "zu sehr" beeinträchtigen könnte (genug freier physikalischer Speicher) und ich hab mir eine alternative virtuelle Ausweichvariante mit integriert.

und auch wenn der Code soweit funktioniert (Programm läuft einwandfrei) bin ich dennoch am Testen ob es nicht irgendwelche Nachteile für andere Programme gibt und wie ich die Grenzwerte am Besten festlege.

mein FileSpliter ist ja jetzt schon nicht grad nett zum PC und läßt die Platte glühen
abgesehn davon wird das AWE bei meinem Program eh sehr selten genutzt werden, da es schließlich fast immer deaktivert sein wird -.-''
(ich hab's eigentlich auch nur aus Spieltrieb eingebaut ... jedenfalls hätte ich mir im Normalfall nicht die Arbeit gemacht um erst rauszufinden wie es geht)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz