Perché un disco RAM dovrebbe essere usato oggi?


23

Dopo aver letto questa domanda ho iniziato a pensare:

"Ehi, cosa è successo a quei programmi di utilità per dischi RAM che usavamo eseguire nei vecchi giorni di DOS?"

Non ho sentito parlare dei dischi RAM per anni fino ad oggi, ma perché? La memoria è ancora più veloce del disco e ne abbiamo molti di entrambi.

Perché oggi i dischi RAM non sono più in uso?


1
Il sistema operativo Amiga utilizza ancora un ramdisk per impostazione predefinita.
Grawity,

Risposte:


32

Perché oggi uso un disco RAM: affrontare il limite di RAM a 32 bit

Attualmente, devo eseguire un sistema operativo a 32 bit a causa di problemi di compatibilità con alcuni software di lavoro. Il mio computer ha molta più RAM di Windows XP Professional, quindi sono bloccato con 3 GB di memoria fisica.

Quando viene colpito il muro da 3 GB, il computer si sposterà per utilizzare il file di paging. Fortunatamente, esiste un software che consente di creare un RAMdisk dalla RAM inaccessibile al sistema operativo, in ambienti a 32 bit!

SuperSpeed ha un programma chiamato RamDisk che ti permetterà di farlo. Un'altra opzione è il software Vsuite Ramdisk (entrambi leggermente diversi: consulta l'elenco delle funzionalità per vedere quale soddisfa le tue esigenze).

Non sto pubblicizzando specificamente alcun software, ma quelli che ho incontrato sono alcuni che ti consentono di utilizzare parte della RAM al di fuori dell'intervallo indirizzabile di un sistema operativo a 32 bit.

Anche se non è così buono come avere il sistema operativo accedere direttamente alla RAM, avere un file di paging basato su RAM è molto meglio di uno basato su disco rigido.

Scratchfiles: un motivo in più (vale anche per 64 bit)


Un altro motivo per cui è possibile utilizzare un disco RAM è per l'editing di foto / video (ad es. Con Adobe Creative Suite). La maggior parte dei programmi Adobe può utilizzare un "file di memoria virtuale" per l'archiviazione temporanea (simile a un file di paging).

Posizionare il file di memoria virtuale su un disco RAM sarebbe davvero utile per aumentare la velocità di modifica di video / foto, soprattutto quando ci si avvicina ai limiti di RAM del sistema operativo (o ai massimi definiti dal programma).

Gennaio 2010 Settembre 2012 Modifica:


Recentemente mi sono imbattuto in questo sito Web (la patch è stata rimossa ma l'ho rispecchiata sul mio sito Web qui ), che consente di correggere il kernel di Windows 7 per consentire al PAE del sistema operativo di estendere la barriera da 4 GB (vedere questo articolo citato in il link precedente per maggiori dettagli sulla meccanica reale dietro la patch). Ciò consente di utilizzare oltre 4 GB (fino a 8 GB) di RAM completamente in Windows 7 a 32 bit.


8

Un ottimo motivo fondamentale per cui i dischi mem non sono molto comuni: è meglio usare la memoria come cache del disco.

Otterrai già la maggior parte / tutti i vantaggi prestazionali di un ramdisk durante il normale funzionamento lasciando semplicemente che la memoria venga utilizzata come cache. Le scritture su disco possono avvenire in background dove la latenza non è un grosso problema, supponendo che tu abbia abbastanza cache.

È comunque possibile utilizzare un ramdisk in circostanze specializzate (nessun disco scrivibile).


1
Un altro caso "specializzato" è dove la latenza fa materia. In altre parole, dove desideri non solo tempi di lettura medi rapidi, ma tutti tempi rapidi, forse anche soprattutto la prima volta. Sto pensando a un web server, dato che spesso ci sono cache di content-delivery-network tra loro e l'utente finale. Un altro modo di guardare un disco RAM è come una cache che è precaricata con certe cose (al contrario di iniziare a vuoto e imparare come va come la maggior parte della cache.)
MarkHu,

E un altro è quando hai una grande quantità di I / O ma puoi permettergli di essere volatile. Il normale funzionamento della cache ha periodici scarichi dei dati (altrimenti non potrebbe mai essere scritto su disco in modo che il file salvato non venga, beh, salvato) in modo che possa saturare in background con I / O pesanti da file temporanei.
Maciej Piechotka,

5
  1. I sistemi operativi sono migliori nell'uso della RAM: le applicazioni vengono caricate nella RAM e scambiate in modo più intelligente.
  2. I dischi RAM sono volatili: i dati nella RAM scompaiono senza alimentazione, quindi non possiamo fare affidamento su di essi.
  3. L'architettura a 32 bit può indirizzare solo poco meno di 4 GB di RAM: non si vuole sprecare quella preziosa RAM come disco RAM.
  4. La RAM è ancora piuttosto costosa, relativamente comunque

2
Non è il caso che le architetture a 32 bit possano indirizzare solo poco meno di 4 GB di RAM. Vedi en.wikipedia.org/wiki/Physical_Address_Extension
ChrisInEdmonton

1
Sebbene quella tecnologia non sia disponibile per la maggior parte degli utenti domestici.
Rich Bradshaw,

1
Spesso le app scrivono molti file di piccole dimensioni, non è necessario superare un riavvio. Per questi RAMDISK sono greate !!
Ian Ringrose,

1
@Rich Bradshaw - Il punto 3. non è vero (come sottolineato da ChrisInEdmonton). Suggerirei di cambiare "architetture a 32 bit" in "Alcuni sistemi operativi a 32 bit". Trovo fastidioso che questo mito persista solo a causa di un sistema operativo paralizzato.
Ripristina Monica il

3

Su Linux c'è un filesystem chiamato tmpfs , che è fondamentalmente un disco RAM.

Come suggerisce il nome, viene spesso utilizzato /tmp, poiché quella cartella contiene solo file che non devono persistere al riavvio.

I CD live utilizzano un disco RAM per l'intero disco rigido.


2

In realtà lo sono. Al giorno d'oggi ci sono persino SSD basati su DRAM .

Sì, è vero che i moderni HDD sono più veloci. Ma rispetto all'avanzamento di altri componenti del sistema, sono molto più lenti. Non è possibile eliminare i tempi di ricerca, poiché la velocità di rotazione è limitata.

Quindi, per molti scopi, l'unità basata su RAM può darti un enorme incremento delle prestazioni. Hai mai provato a costruire un progetto software di grandi dimensioni su un normale HDD rispetto all'unità RAM?

Si noti inoltre che i kernel di sistema moderni, come Linux, utilizzano già tutta la RAM disponibile (non utilizzata) per la memorizzazione nella cache dei blocchi.


Ummm ... Non penso che questo sia ciò che l'OP aveva in mente. L'OP si riferisce ai dischi RAM intorno all'era 8086-80486, dove la RAM era molto costosa e un dispositivo di memoria non volatile come un disco floppy, per aumentare la memoria del sistema, veniva utilizzato un disco rigido. Non penso che intendesse usare i supporti DRAM al posto di un tipico dispositivo di archiviazione non volatile.
J. Polfer,

1
Aspetta ... non importa ... Ho letto male il post.
J. Polfer,

Un grosso problema con gli SSD è che sono ancora legati alle interfacce I / O lente (che non sono i dischi RAM del software).
Brian Knoblauch,

2

Erano in gran parte stampelle per compensare le carenze dei sistemi operativi storpi, e un sistema operativo completo non ne ha bisogno.

Cioè: per la maggior parte degli scopi il meccanismo di memorizzazione nella cache del sistema operativo fornirà prestazioni migliori.

Fa la stessa cosa (inserisce i dati dei residenti "su disco" nella RAM per un accesso rapido), ma ha un mucchio di euristiche e ottimizzazioni just-in-time per scegliere esattamente cosa dovrebbe essere accelerato. Ci saranno casi speciali in cui puoi conoscere meglio del sistema operativo, ma la maggior parte delle volte dovresti lasciare abbastanza bene da solo.


2

Post molto vecchio ma ancora pertinente oggi (circa 2019.

L'OP ha chiesto dei confronti di DOS. Darò a molti di voi un recupero d'archivio.

A quei tempi eravamo in un mondo pieno di 640 KB di RAM, ma potevamo attivare altri 384 KB di memoria estesa. Con il software abbiamo potuto scambiare questo 384k in memoria espansa (che era un formato creato da Lotus-Intel-Microsoft), che avrebbe permesso alle app compatibili di utilizzare questo prezioso 384k per l'applicazione. Queste app erano generalmente app per fogli di calcolo (Lotus 1-2-3 e la nuova app per fogli di calcolo Excel di Microsoft). Avevamo schede RAM che potevano consentire a una CPU a 16 bit di eseguire un Above Board (RAM BOARD bloccato con DRAM CHIPS) con memoria indirizzabile fino a 2-4 MB se fosse un hardware compatibile con LIM).

Nel mondo di oggi, 32 GB possono essere eccessivi per la maggior parte degli utenti, ma alcuni OEM (produttori di apparecchiature originali) escono con modelli standard da 32 GB. Quindi cosa ci puoi fare? Puoi fare qualcosa che lubrifica il tuo sistema operativo, creando un RAMDrive da parte di quella memoria (4 gb-8 gb) in modo che le app di file temporanei e il sistema operativo vengano creati, andranno lì e verranno scaricati automaticamente al riavvio. Puoi persino farlo per i browser Internet (Chrome può essere configurato per utilizzare questo X:\Ramdrive\Cachepercorso anche con alcune piccole modifiche creando un collegamento con nuovi parametri e una singola modifica del registro.)

Ne vale la pena?

Molti RAMDrive sono gratuiti al giorno d'oggi e configurano automaticamente le variabili di ambiente SET TEMP, SET TMP. Tutto quello che fai è collegare la nuova lettera di unità di RAMDrive e alcuni di quegli errori di sistema incoerenti, piccoli arresti anomali, rallentamenti scompaiono.

Ricorda che molte app e aggiornamenti non si cancellano esattamente come vorremmo.

E per i giocatori puoi creare un .BATfile che copia tutto il contenuto del tuo gioco e salvare i file (mantieni il formato delle cartelle e delle sottocartelle con un /Sparametro con XCOPY. Assicurati di creare un extra SAVE.BATche memorizzi tutti i tuoi dati sul disco rigido quando hai finito altrimenti rischi di non salvare nulla.


2

Ho usato il mio disco RAM da 2 GB per archiviare un sistema operativo virtuale VMware (tutto, XP), salvato e ricaricato automaticamente in fase di avvio / spegnimento. L'ho quindi eseguito dal ramdisk con VMware Play. Ciò ha reso l'intera velocità del disco RAM del sistema operativo virtuale inclusi tutti gli I / O con i suoi file di sistema (tutti, non solo alcuni) e, come puoi immaginare, le prestazioni sono state sorprendenti!

Oltre a ciò, l'estrazione di file Zip / RAR è molto più veloce, così come la codifica DVD.


0

Perché :

  1. Mentre le specifiche del computer sono migliorate enormemente, il software è diventato molto gonfiato e richiede molta più memoria. Un piccolo disco di memoria non è più di grande aiuto.
  2. Un disco di memoria è utile solo per una cosa: conservare i file temporanei. Non molti programmi impiegano più il loro tempo a destreggiarsi tra file temporanei e quando lo fanno tendono ad essere abbastanza grandi.

0

Perché un disco RAM dovrebbe essere usato oggi?

perché la RAM è a buon mercato e un disco RAM è più veloce di un disco rigido tradizionale, da un connazionale (o oltre 300 volte).

nota: un disco RAM potrebbe non essere una soluzione adatta per ogni singolo scenario, ma laddove applicabile batte qualsiasi unità disco conosciuta dall'uomo.


0

Devo dire che non sono più in uso a causa del gonfiamento del software e la crescita della memoria di massa ha superato di gran lunga la RAM. In passato le macchine avrebbero avuto più RAM disponibile rispetto allo storage (ad esempio, il mio vecchio XT con 640 KB di RAM e un'unità disco a 360 KB). Ciò ha reso semplicissimo la creazione di un ramdisk da 384 KB, la copia dell'app su di essa e la sua esecuzione (lasciando comunque un adeguato, per la maggior parte delle app del giorno, 256 KB di RAM). Contrariamente ai sistemi che oggigiorno vengono forniti con un'unità da 1 TB, ma hanno solo 1 GB di RAM ...

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.