Ram Defragmentator

Maak aankondigingen en adverteer hier je Liberty BASIC software en Liberty BASIC websites

Ram Defragmentator

Berichtdoor anthonio » vr apr 03, 2009 11:40 pm

Een korte uitleg: Zoals de naam al doet vermoeden, defragmenteerd "ram defragmentator" uw RAM.
Concreet vult het programma het geheugen met nullen todat dit volledig vol zit.
Hierna verwijder je de nullen uit het geheugen.
Door dit te doen verwijder je onnodige lege plaatsen in het geheugen waardoor je meer RAM geheugen
ter beschikking krijgt.
Op mijn vista machine levert het runnen van dit programma 200MB RAM geheugen winst op (totale RAM = 1024MB)
Op mijn xp machine levert dit 130MB winst op (totale RAM = 512MB).
Hieronder wat screenshots van RAM Defragmentator in actie.
Natuurlijk zijn suggesties/commentaar ed. altijd welkom.
Ram1.jpg
Ram1.jpg (67.19 KiB) 5167 keer bekeken

Ram2.jpg
Ram2.jpg (78.53 KiB) 5167 keer bekeken
Bijlagen
RamDefragmentator.zip
(1.34 MiB) 185 keer gedownload
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm

Re: Ram Defragmentator

Berichtdoor ForNext » za apr 04, 2009 8:42 pm

Antonio,

Het programma ziet er prachtig uit.
Maar er wordt maar 2 GB geheugen geregistreerd, terwijl er 4 GB in de pc zit.
Het is wat moeilijk te zien op de screenshot, maar het staat er wel (2047MB).
Oh ja, en een pagefile gebruik ik niet, dus dat staat allemaal op 0MB. Dat klopt dus.

Ciao,
Roberto
Bijlagen
scr_4.jpg
scr_4.jpg (578.63 KiB) 5153 keer bekeken
Cursist LB Amstelveen
ForNext
 
Berichten: 60
Geregistreerd: za okt 27, 2007 9:40 am
Woonplaats: Amstelveen

Re: Ram Defragmentator

Berichtdoor anthonio » zo apr 05, 2009 1:35 am

Roberto,

Allereerst bedankt voor het uittesten van het programma.
Over die foute aanduiding.
Zou je hier even de output van volgende code kunnen geven.
Deze geeft uw RAM stats weer.
Code: Selecteer alles
struct MEMORYSTATUS, _
       dwLength As Long, _
       dwMemoryLoad As Long, _ 'contains percentage memory used
       dwTotalPhys As Long, _ 'total amount of physical memory
       dwAvailPhys As Long, _ 'available amount of physical memory
       dwTotalPageFile As Long, _ 'total amount of memory in swap file
       dwAvailPageFile As Long, _ 'available amount of memory in swap file
       dwTotalVirtual As Long, _ 'total amount of virtual memory
       dwAvailVirtual As Long 'available amount of virtual memory

calldll #kernel32, "GlobalMemoryStatus",MEMORYSTATUS As struct, GetMemory as long

MEMORYSTATUS.dwTotalPhys.struct = int(MEMORYSTATUS.dwTotalPhys.struct/1024/1024)
MEMORYSTATUS.dwAvailPhys.struct = int(MEMORYSTATUS.dwAvailPhys.struct/1024/1024)
MEMORYSTATUS.dwTotalPageFile.struct = int(MEMORYSTATUS.dwTotalPageFile.struct/1024/1024)-int(MEMORYSTATUS.dwTotalPageFile.struct/1024/1024)-int(MEMORYSTATUS.dwTotalPageFile.struct/1024/1024)
MEMORYSTATUS.dwAvailPageFile.struct = int(MEMORYSTATUS.dwAvailPageFile.struct/1024/1024)
MEMORYSTATUS.dwTotalVirtual.struct = int(MEMORYSTATUS.dwTotalVirtual.struct/1024/1024)
MEMORYSTATUS.dwAvailVirtual.struct = int(MEMORYSTATUS.dwAvailVirtual.struct/1024/1024)

totalmem$ = str$(MEMORYSTATUS.dwTotalPhys.struct)
availmem$ = str$(MEMORYSTATUS.dwAvailPhys.struct)
usedmem$ = str$(MEMORYSTATUS.dwTotalPhys.struct - MEMORYSTATUS.dwAvailPhys.struct)

totalpagefile$ = str$(MEMORYSTATUS.dwTotalPageFile.struct)
availpagefile$ = str$(MEMORYSTATUS.dwAvailPageFile.struct)
usedpagefile$ = str$(MEMORYSTATUS.dwTotalPageFile.struct - MEMORYSTATUS.dwAvailPageFile.struct)

totalvirtual$ = str$(MEMORYSTATUS.dwTotalVirtual.struct)
availvirtual$ = str$(MEMORYSTATUS.dwAvailVirtual.struct)
usedvirtual$ = str$(MEMORYSTATUS.dwTotalVirtual.struct - MEMORYSTATUS.dwAvailVirtual.struct)



print "totaal " + totalmem$ + " MB"
print "available " + availmem$ + " MB"
print "used " + usedmem$ + " MB"

print "totaal " + totalpagefile$ + " MB"
print "available " + availpagefile$ + " MB"
print "used " + usedpagefile$ + " MB"

print "totaal " + totalvirtual$ + " MB"
print "available " + availvirtual$ + " MB"
print "used " + usedvirtual$ + " MB"

wait


Alvast bedankt.
groeten
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm

Re: Ram Defragmentator

Berichtdoor ForNext » zo apr 05, 2009 11:06 am

Ik heb de code losgelaten op 3 ´systemen.
Hierbij de resultaten:

Systeem 1
Processor : IntelCore 2CPU 6600 @ 2.40Ghz
Geheugen (RAM): 4.00GB
OS: Windows Vista Home Premium 32-bits

Output:
totaal 2047 MB
available 1770 MB
used 277 MB
totaal 0 MB
available 0 MB
used 0 MB
totaal 2047 MB
available 1885 MB
used 162 MB

Systeem 2
Processor : IntelCore 2CPU 6600 @ 2.40Ghz
Geheugen (RAM): 4.00GB
OS: Windows 7 Ultimate Beta 64-bits

Output:
(zowel 4.03 als 4.04 beta 3)
totaal -1MB
available -1046 MB
used 1045 MB
totaal 0 MB
available 0 MB
used 0 MB
totaal 2047 MB
available 1787 MB
used 261 MB

Systeem 3
Processor : IntelCore 2CPU T5600 @ 1.83Ghz
Geheugen (RAM): 2.00GB
OS: Windows XP Media Center Edition 32-bits

Output:
totaal 2046 MB
available 1290 MB
used 756 MB
totaal 157 MB
available -829 MB
used 986 MB
totaal 2047 MB
available 1894 MB
used 153 MB


Ciao,
Roberto
ForNext
 
Berichten: 60
Geregistreerd: za okt 27, 2007 9:40 am
Woonplaats: Amstelveen

Re: Ram Defragmentator

Berichtdoor anthonio » zo apr 05, 2009 9:22 pm

Bedankt voor de testresultaten roberto.
Onderstaande code moet normaal het probleem van XP oplossen.
Heb dit getest op mijn xp en ik krijg daar nu ook een positief getal.

Code: Selecteer alles
struct MEMORYSTATUS, _
       dwLength As Long, _
       dwMemoryLoad As Long, _ 'contains percentage memory used
       dwTotalPhys As Long, _ 'total amount of physical memory
       dwAvailPhys As Long, _ 'available amount of physical memory
       dwTotalPageFile As Long, _ 'total amount of memory in swap file
       dwAvailPageFile As Long, _ 'available amount of memory in swap file
       dwTotalVirtual As Long, _ 'total amount of virtual memory
       dwAvailVirtual As Long 'available amount of virtual memory

calldll #kernel32, "GlobalMemoryStatus",MEMORYSTATUS As struct, GetMemory as long

MEMORYSTATUS.dwTotalPhys.struct = int(MEMORYSTATUS.dwTotalPhys.struct/1024/1024)
MEMORYSTATUS.dwAvailPhys.struct = int(MEMORYSTATUS.dwAvailPhys.struct/1024/1024)
MEMORYSTATUS.dwTotalPageFile.struct = int(MEMORYSTATUS.dwTotalPageFile.struct/1024/1024)
MEMORYSTATUS.dwAvailPageFile.struct = int(MEMORYSTATUS.dwAvailPageFile.struct/1024/1024)
MEMORYSTATUS.dwTotalVirtual.struct = int(MEMORYSTATUS.dwTotalVirtual.struct/1024/1024)
MEMORYSTATUS.dwAvailVirtual.struct = int(MEMORYSTATUS.dwAvailVirtual.struct/1024/1024)

totalmem = MEMORYSTATUS.dwTotalPhys.struct
availmem$ = str$(MEMORYSTATUS.dwAvailPhys.struct)
usedmem$ = str$(MEMORYSTATUS.dwTotalPhys.struct - MEMORYSTATUS.dwAvailPhys.struct)

totalpagefile = MEMORYSTATUS.dwTotalPageFile.struct
if totalpagefile < 0 then  'Zorgt ervoor dat je geen negatieve waarden krijgt
    totalpagefile = totalpagefile - totalpagefile - totalpagefile
end if
availpagefile$ = str$(MEMORYSTATUS.dwAvailPageFile.struct)
usedpagefile = totalpagefile - MEMORYSTATUS.dwAvailPageFile.struct

totalvirtual$ = str$(MEMORYSTATUS.dwTotalVirtual.struct)
availvirtual$ = str$(MEMORYSTATUS.dwAvailVirtual.struct)
usedvirtual$ = str$(MEMORYSTATUS.dwTotalVirtual.struct - MEMORYSTATUS.dwAvailVirtual.struct)


print "totaal "; totalmem; " MB"
print "available " + availmem$ + " MB"
print "used " + usedmem$ + " MB"

print "totaal "; totalpagefile; " MB"
print "available " + availpagefile$ + " MB"
print "used "; usedpagefile; " MB"

print "totaal " + totalvirtual$ + " MB"
print "available " + availvirtual$ + " MB"
print "used " + usedvirtual$ + " MB"

wait


Hoe het komt dat die 4GB niet deftig wordt weergegeven blijft mij nog steeds een raadsel.
Ik ga dit even verder uitpluizen.

Groeten.
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm

Re: Ram Defragmentator

Berichtdoor anthonio » wo apr 08, 2009 1:33 pm

ForNext,

Zou u even volgende code kunnen runnen en de output hier posten.

Code: Selecteer alles
struct MemoryStatusEx, _
       dwLength As Long, _
       dwMemoryLoad As Long, _ 'contains percentage memory used
       ullTotalPhys As double, _ 'total amount of physical memory
       ullAvailPhys As double, _ 'available amount of physical memory
       ullTotalPageFile As double, _ 'total amount of memory in swap file
       ullAvailPageFile As double, _ 'available amount of memory in swap file
       ullTotalVirtual As double, _ 'total amount of virtual memory
       ullAvailVirtual As double, _ 'available amount of virtual memory
       ullAvailExtendedVirtual as double

calldll #kernel32, "GlobalMemoryStatusEx",MemoryStatusEx As struct, ret as long

totalmem$ = str$(MemoryStatusEx.ullTotalPhys.struct)
availmem$ = str$(MemoryStatusEx.ullAvailPhys.struct)
usedmem$ = str$(MemoryStatusEx.ullTotalPhys.struct - MemoryStatusEx.ullAvailPhys.struct)

totalpagefile$ = str$(MemoryStatusEx.ullTotalPageFile.struct)
availpagefile$ = str$(MemoryStatusEx.ullAvailPageFile.struct)
usedpagefile = totalpagefile - MemoryStatusEx.ullAvailPageFile.struct

totalvirtual$ = str$(MemoryStatusEx.ullTotalVirtual.struct)
availvirtual$ = str$(MemoryStatusEx.ullAvailVirtual.struct)
usedvirtual$ = str$(MemoryStatusEx.ullTotalVirtual.struct - MemoryStatusEx.ullAvailVirtual.struct)


print "total "; totalmem$; " MB"
print "available " + availmem$ + " MB"
print "used " + usedmem$ + " MB"

print "total "; totalpagefile$; " MB"
print "available " + availpagefile$ + " MB"
print "used "; usedpagefile; " MB"

print "total " + totalvirtual$ + " MB"
print "available " + availvirtual$ + " MB"
print "used " + usedvirtual$ + " MB"

wait


Alvast bedankt.

groeten.
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm

Re: Ram Defragmentator

Berichtdoor anthonio » wo apr 08, 2009 10:21 pm

Bij deze opgelost door een andere api call.
Versie 1.1 vind u in de bijlage.

Groeten.
Bijlagen
RamDefragmentator.zip
(1.34 MiB) 160 keer gedownload
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm

Re: Ram Defragmentator

Berichtdoor ForNext » vr apr 10, 2009 8:19 pm

Bijgaand het resultaat (jpg) van de 3e listing.
Versie 1.1 heb ik gedownload en ga ik straks proberen.
Ciao,
Roberto
Bijlagen
scr_7.jpg
scr_7.jpg (510.4 KiB) 5097 keer bekeken
Cursist LB Amstelveen
ForNext
 
Berichten: 60
Geregistreerd: za okt 27, 2007 9:40 am
Woonplaats: Amstelveen

Re: Ram Defragmentator

Berichtdoor ForNext » vr apr 10, 2009 8:56 pm

Versie 1.1 werkt uitstekend en geeft het gewenste resultaat voor wat betreft de hoeveelheid geplaatst geheugen.
Er zijn diverse verhalen, theoriën, fabels en legenden in omloop omtrent de hoeveelheid geheugen bij 32- en 64-bits besturingssystemen.
Wat er ook van zij, versie 1.1 doet het conform al die vertelsels.
Systeem:
Processor : IntelCore 2CPU 6600 @ 2.40Ghz
Geheugen (RAM): 4.00GB
OS: Windows Vista Home Premium 32-bits

Output:
used 1158 MB
available 1912 MB
totaal 3070 MB
used 1271 MB
available 990 MB
totaal 2260 MB
used 159 MB
available 1888 MB
totaal 2047 MB

Systeem:
Processor : IntelCore 2CPU 6600 @ 2.40Ghz
Geheugen (RAM): 4.00GB
OS: Windows 7 Ultimate Beta 64-bits

Output:
used 998 MB
available 3106 MB
totaal 4094 MB
used -2967 MB
available 3262 MB
totaal 295 MB
used 172 MB
available 1875 MB
totaal 2047 MB

Systeem:
Processor : IntelCore 2CPU T5600 @ 1.83Ghz
Geheugen (RAM): 2.00GB
OS: Windows XP Media Center Edition 32-bits

Output:
used 740 MB
available1306 MB
totaal 2046 MB
used 786 MB
available3252 MB
totaal 3938 MB
used 127 MB
available 1920 MB
totaal 2047 MB

Alleen dat negatieve swapfile bij Windows 7 is vreemd, maar dat kan in de RC wel anders zijn.
Ik houd het in de gaten.

Ciao,
Roberto
Cursist LB Amstelveen
ForNext
 
Berichten: 60
Geregistreerd: za okt 27, 2007 9:40 am
Woonplaats: Amstelveen

Re: Ram Defragmentator

Berichtdoor anthonio » za apr 11, 2009 1:28 am

Bedankt roberto voor het programma verder uit te testen.
En inderdaad dat negatieve getal bij windows7 is vreemd.
Windows7 is wel nog in beta versie dus hopelijk wordt dit gefixed.
Mochten er tijdens het gebruik van het programma toch nog bugs opduiken
dan hoor ik dat graag.

Groeten.
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm

Re: Ram Defragmentator

Berichtdoor Gordon » zo apr 12, 2009 4:14 pm

Hallo Antonio,

Hier gaat alles OK, maar ik heb alleen XP getest.

Hoe koppel jij een eigen icon aan je programma's?

Gordon
Avatar gebruiker
Gordon
Site Admin
 
Berichten: 684
Geregistreerd: zo mei 22, 2005 12:50 am

Re: Ram Defragmentator

Berichtdoor anthonio » ma apr 13, 2009 10:39 pm

Bedankt voor het testen gordon.

Ik gebruik dit programma ervoor (http://www.softboy.net/exeico/).

groeten
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm


Keer terug naar Aankondigingen, Software en Websites

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers. en 1 gast

cron