Cosa imposta la dimensione di tmpfs? Cosa succede quando è pieno?

Che cosa imposta la dimensione del tmpfs? (Sulla mia macchina risiede in /dev/shm) Posso vedere la sua voce in /etc/fstab, ma nessuna annotazione della sua dimensione. Quando si controlla con df -h, sembra essere la metà della dimensione della memoria fisica installata nel sistema. È questo il comportamento predefinito?

Inoltre, cosa succede se si riempie? Si espande dinamicamente costringendo altri programmi in esecuzione a swap? tmpfs si sposta nella partizione swap?

Infine, cosa ha la priorità nella memoria tmpfs o nelle applicazioni? cioè, se ho tmpfs sufficientemente pieno (come il 40% della memoria fisica) e ho programmi che richiedono il 70% della memoria fisica, quale ha la priorità?

Risposta

Cosa imposta la dimensione del tmpfs? (Sulla mia macchina risiede in / dev / shm) Posso vedere la sua voce in / etc / fstab, ma nessuna notazione della sua dimensione.

La documentazione del kernel tratta questo sotto le opzioni di montaggio:

size: il limite di byte allocati per questa istanza tmpfs. Limpostazione predefinita è metà della RAM fisica senza swap. Se si sovradimensionano le istanze tmpfs, la macchina si bloccherà

(Enfasi mia)

Inoltre , cosa succede se si riempie?

Come indicato sopra, se “ti sei impegnato troppo in tmpfs la tua macchina andrà in deadlock. Altrimenti (se” s ha appena raggiunto il limite massimo) restituisce ENOSPC proprio come qualsiasi altro filesystem.

Infine, cosa ha la priorità nella memoria tmpfs o nelle applicazioni? cioè, se ho tmpfs sufficientemente pieno (come il 40% della memoria fisica) e ho programmi che richiedono il 70% della memoria fisica, quale ha la priorità?

È simile alla contesa tra programmi. Le pagine più utilizzate tenderanno ad essere nella memoria fisica mentre le pagine meno utilizzate tenderanno a essere scambiate.

Se è necessario assicurarsi le pagine sono sempre nella memoria fisica puoi usare ramfs che è simile ma di dimensione fissa e non si scambia.

Commenti

  • Cosa succede se 2 tmpfs vengono montati ciascuno al 60% della ram, la dimensione totale sarebbe del 120%. Si blocca non appena entrambi i tmpfs vengono riempiti fino al 50%?
  • @CMCDragonkai Ho provato a riempire più mount tmpfs e la macchina si è bloccata.
  • Hai dovuto riavviare la macchina ?

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *