È possibile utilizzare un disco di archiviazione (come un'unità USB) come RAM?


23

La mia scheda madre (HP Pavilion s3000y) supporta solo 2 GB di RAM max. Ciò significa che posso allocare solo 1 GB per l'esecuzione di macchine virtuali e le applicazioni che utilizzano molta RAM sono lente (come giochi e Visual Studio).

È possibile utilizzare un disco di archiviazione come un'unità USB come RAM?

O in caso contrario, VirtualBox può utilizzare un'unità come RAM per VM?


5
No e no È necessario disabilitare tutto ciò che è possibile (servizi, prefetch, indicizzazione, ecc.) Per liberare la RAM. L'uso di XP potrebbe semplificarti la vita.
mtone

3
I dischi RAM di @kobaltz prendono la memoria libera da usare come unità, che è l'opposto di ciò che OP richiede. Non credo sia possibile un'utilità "disk RAM" (al contrario di "RAM disk"). E per aggiungere perché virtualbox non lo fa: la virtualizzazione è una sorta di gateway per il tuo sistema, non un emulatore.
mtone

3
Probabilmente dovresti pensare di ottenere un'altra scheda madre. . .
surfasb,

1
Onestamente Nate, questo sistema NON è fatto per la virtualizzazione, più come un computer da cucina, se ne hai bisogno per lavoro o studio sei meglio di costruire o acquistare un PC "normale" da 400 $. Altrimenti, consiglierei dualbooting invece di virtualizzazione! e @surfasb: Ottenere una scheda madre diversa non è proprio l'opzione su una slimline hp
HTDutchy

@ s4uadmin: questo fa apparire un buon punto. Quella alimentazione non reggerebbe anche se si collegasse una scheda madre più potente.
surfasb

Risposte:


23

Windows Vista e 7 supportano ReadyBoost che utilizzerà un'unità USB veloce come cache per SuperFetch. Ciò consente a SF di funzionare meglio su sistemi con RAM limitata. Questo può aiutare ad aumentare la reattività delle operazioni di I / O dei file perché l'unità flash è molto più veloce con lettura / scrittura casuale 4K rispetto all'HDD.

Meglio ancora, ottieni un'unità SSD. Un file di paging su un SSD è molto veloce e migliorerà le velocità di paginazione in modo abbastanza significativo, ma non sostituisce in alcun modo più RAM.

A proposito, hai provato a installare una RAM più grande di quella che la scheda madre suggerisce che può usare? È possibile che se esegui l'aggiornamento all'ultima revisione del BIOS potresti essere in grado di utilizzare chip più grandi, come 2x2GB o 4x1GB (non sei sicuro di quanti slot RAM hai). Non dovrebbe far male provare almeno un chip più grande se ne hai uno disponibile.

Inoltre, è necessario ridurre l'allocazione di RAM per la macchina virtuale al minimo necessario per eseguire la VM. Un guest XP può funzionare con un minimo di 256 MB o 384 MB di RAM a seconda di cosa lo stai utilizzando.


3
Non è noto che ReadyBoost non è affatto utile su un computer con 2 GB o più di RAM? E gli SSD non sono abbastanza costosi da poter acquistare un nuovo computer con 4 GB di RAM per non molto di più, il che sarebbe complessivamente molto meglio?
Graphth

1
Apparentemente no , qualcuno non lo sapeva e ci provava. Indovina, mi ha aiutato.
MSalters il

ReadyBoost è utile in situazioni marginali. Come ho notato nella mia modifica sopra, è usato solo da SuperFetch; non ha nulla a che fare con l'accelerazione di IO di file di paging. SE la tua RAM è "marginale" per il tuo carico di lavoro e SE il tuo carico di lavoro è tale che SuperFetch può aiutarti, allora SF può velocizzare l'IO dei file e persino il caricamento del programma (che è il paging ma non attraverso il file di paging). Se hai molta RAM, non sarà d'aiuto perché SF funzionerà già nella RAM; e se sei davvero a corto di RAM, anche spostare tutti gli SF dalla RAM non sarà abbastanza utile.
Jamie Hanrahan,

17

Il motivo per cui le applicazioni che utilizzano molta memoria rallenta il sistema è perché ciò costringe il sistema a utilizzare i dispositivi di archiviazione. Quello che stai chiedendo di fare è ciò che il sistema sta già facendo e il motivo per cui non sei felice. Sfortunatamente, le uniche soluzioni sono modificare il carico di lavoro in modo che richieda meno memoria o aggiunga più memoria.


10

Anche se dovessi farlo, non sarebbe raccomandato. Le unità USB / Hard Disk sono estremamente lente. Pensa alla tua unità USB. Si trasferirà ad un massimo di 60 Mbps. La ram nel tuo computer in base all'altra tua domanda funzionerà ovunque da 4200 Mbps a 5333 Mbps!

Ecco perché quando il tuo computer ha poca memoria, utilizzerà il tuo Pagefile per allocare memoria come memoria virtuale . La luce del tuo disco rigido diventerà pazza e il tuo computer rallenterà notevolmente. Ha esaurito la memoria fisica e, nel tentativo di non arrestarsi in modo anomalo, utilizzerà il disco rigido come memoria virtuale . Pensa a quanto è lento il computer a quel punto e pensa a quanto orribile verrà eseguita la tua VM se utilizza sempre questo RamDisk (vedi sotto) o memoria virtuale.

inserisci qui la descrizione dell'immagine


4

Sì, il nome è "memoria virtuale" o "scambio"; è stato usato regolarmente sui personal computer per molto tempo (trovato per la prima volta negli anni '60, e fin dagli anni '90 tutti i sistemi operativi tradizionali li hanno e li hanno accesi di default). Potresti essere in grado di migliorare marginalmente le prestazioni modificando la dimensione della memoria virtuale ( come per Vista ), anche se probabilmente non migliorerebbe di molto le prestazioni.

In generale, una memoria virtuale migliora le prestazioni solo in situazioni in cui il computer non sarà in grado di gestire il carico di memoria in altro modo, ad esempio in situazioni in cui il sistema inizia a guastarsi perché viene ucciso OOM dal sistema operativo.


1

Innanzitutto, sei sicuro che il tuo mobo sia limitato a 2 GB ?! Pensavo di aver visto un padiglione l'altro giorno che utilizzava DDR2 o addirittura DDR3 in stile RAM. Se il tuo sistema è in grado di utilizzare DDR2 o meglio, ciò significa che probabilmente è una buona possibilità che puoi popolare gli unici 2 slot RAM con stick RAM più grandi. Potresti essere in grado di utilizzare due stick da 2 GB, permettendoti così di passare a 4 GB.

Ma poi c'è il BIOS. E non riesco proprio a credere che HP non abbia un aggiornamento del BIOS che puoi aggiornare. (E sarebbe un indizio enorme se si guardasse sul sito Web HP per il proprio modello specifico.) Ma anche senza un aggiornamento del BIOS, si dovrebbe almeno essere in grado di vedere poco più di 3Gig di RAM. Dovrai solo eseguire il flashing del BIOS per accedere all'intero 4Gig. E ancora, supponendo che tu possa anche installare DDR2 o meglio.

Ma se sei bloccato con DDR1, allora dimenticalo. Anch'io probabilmente sceglierei il dual-boot invece di usare una VM. So che fa schifo quando si tenta di condividere dati tra i sistemi operativi e soprattutto quando si provano nuove distribuzioni. Ma poi, quasi tutte le distro Linux possono gestire nativamente anche le partizioni NTFS (suggerimento, suggerimento).


0

no. I dispositivi di archiviazione come le unità USB possono aiutare il sistema operativo a memorizzare / recuperare i dati da esso alla RAM. aiuta solo a fare questo tipo di operazioni di paginazione / scambio.


0

È possibile utilizzare un gestore di memoria alternativo: http://www.techsupportalert.com/best-free-memory-optimizer.htm . Un gestore di memoria può comprimere la RAM usata e liberare un po 'di RAM. In Linux c'è compcache e / o zram. Tuttavia non so come funziona su Windows. È possibile che il gestore della memoria alternativo non utilizzi questa tecnologia di compressione. Questo programma qui utilizza la compressione: http://www.wincarepro.com/index.htm . È possibile utilizzare compcache per creare un disco ram per Windows ( http://www.vflare.org/2009/03/ram-is-not-enough-memory-compression.html ).

Modifica: ecco un altro programma: http://www.windows7download.com/win7-memory-improve-master/smdggjpk.html ma sembra esattamente lo stesso di questo http://www.wincarepro.com ? Non so se questo è serio?


Un disco RAM è una pessima idea in quasi tutte le situazioni e in OGNI situazione di "RAM limitata". E i "gestori di memoria" aggiuntivi fanno quasi sempre più male che bene. Funzionano secondo il principio che la RAM libera è buona. In effetti, la RAM libera viene sprecata.
Jamie Hanrahan,

@JamieHanrahan: ho scritto RamDisk nel senso di Memory-Swap. Inoltre può essere compresso: vflare.org/2009/03/ram-is-not-enough-memory-compression.html .
Gigamegs

Non sono sicuro di cosa significhi "nel senso di scambio di memoria", ma se intendi mettere un file di paging su un disco RAM? Non è nemmeno sbagliato. Aumenterà la percentuale di errori della pagina. Non tutti gli errori aggiuntivi verranno risolti sul disco RAM (la maggior parte, statisticamente, passa ai file mappati). Di quelli che sono, sì, il PF sul disco RAM sarà più veloce di un disco rigido - ma NON impegnare quella RAM su un disco RAM, quindi non incorrere in quei guasti aggiuntivi, sarebbe ancora più veloce.
Jamie Hanrahan

@JamieHanrahan: Non sono sicuro di quale sia il tuo problema. Puoi leggere l'articolo su Compcache. Utilizza un ram-disk compresso per lo scambio. In alcuni casi aiuta.
Gigamegs

Ho letto l'articolo. È facile ideare carichi di lavoro specifici in cui tali cose sembrano aiutare. Anche un semplice "ottimizzatore di memoria" (che elimina semplicemente il più possibile dalla RAM) sembrerà aiutare con il tempo di avvio del prossimo programma che si avvia. Ma per farlo uccide le prestazioni di tutto il resto in esecuzione, incluso gran parte del sistema operativo. Mostrare guadagni su tutta la linea senza svantaggi è MOLTO più difficile.
Jamie Hanrahan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.