Introduzione alla Gestione dei File e dei Processi
Il video discute la gestione dei file e dei processi in informatica, con un focus sulla necessità di salvare i dati in modo permanente. Si evidenzia come la memoria RAM, essendo temporanea, non possa essere utilizzata per memorizzare dati a lungo termine.
Importanza della Memoria Permanente
- Memoria RAM vs. Memoria Permanente: La RAM è temporanea e i dati vengono persi al termine del programma. È fondamentale avere una soluzione per salvare i dati in modo permanente, come i file. Per approfondire, puoi consultare l'Introduzione alla Classe File in Java: Gestione dei File e Directory.
- Utilizzo dei File: I file possono essere visti come grandi array di byte, con un indirizzamento che consente di accedere ai dati in modo efficiente.
Funzionamento dei Dischi Rigidi
- Struttura dei Dischi: I dischi rigidi possono essere magnetici o SSD, con differenze significative in termini di velocità e prestazioni. Gli SSD sono più veloci poiché non hanno parti in movimento.
- Formattazione e Partizionamento: La formattazione divide il disco in blocchi, facilitando la gestione dei file e riducendo la frammentazione. Il partizionamento consente di segregare i dati per migliorare l'efficienza.
File System e Gestione dei Dati
- File System Manager: Il sistema operativo gestisce i file attraverso un file system, che organizza i dati in una struttura ad albero. Questo rende più facile l'accesso e la gestione dei file. Per una comprensione più ampia, puoi leggere l'Understanding Computers and Telecommunications in Information Technology.
- Evoluzione dei File System: I file system sono cambiati nel tempo per adattarsi alle esigenze di multiutenza e sicurezza, con diverse implementazioni a seconda del sistema operativo.
Conclusione
La gestione dei file e dei processi è un aspetto cruciale dell'informatica, che richiede una comprensione approfondita delle strutture di memoria e dei sistemi operativi per garantire un'efficace archiviazione e accesso ai dati. Se sei interessato a esplorare ulteriormente, ti consiglio di dare un'occhiata all'Introduction to Linux: A Comprehensive Guide for Beginners e alla Java Programming: A Comprehensive Guide to Understanding Java and Its Concepts.
Allora dunque gli argomenti che affrontiamo in questo quadrimestre sono in
tpsi due Ehm io farò praticamente la gestione dei file è abbastanza fatta un po' bene
abbastanza lunga e complessa e invece in laboratorio Ne parlerò con con Tavano vi farà la gestione dei
processi ok E perché questo argomento alla fine dei file è decisamente
importante in quinta non si riesce a fare tendenzialmente e e però non voglio abbandonare dal
punto di vista informatico la gestione delle strutture dinamiche perché Samo diamo stiamo andando un po' rilento e
devo completare bene le liste e poi ci sono da fare anche gli alberi e quindi anche da quella parte lì ne abbiamo poi
gli argomenti di tps di informatica sono sempre un po' così sovrapponibili per certi versi
E però siccome uno degli argomenti importanti da fare quest'anno è la gestione dei processi è quello
probabilmente Vediamo se la riesco a delegare a a Tavano e senò poi possiamo anche rivedere alcune parti
insieme nelle ore di teoria Allora introduzione su file eh fino adesso abbiamo abbiamo Eh Avete
visto e studiato l'utilizzo di eh di programmi in cui i dati praticamente li
dovevate inserire Durante l'esecuzione del programma finito il programma tutto quello che avevate inserito era perso Ok
quindi venivano usate solo strutture dinamiche in memoria RAM Ok la memoria RAM la memoria
temporanea non non permanente e quindi tutto ciò che viene memorizzato in queste aree di memoria quando il
programma termina o quando il computer si spegne ovviamente si perde tutto questo dal punto di vista informatico
sarebbe un lavoro che obbligherebbe tutte le volte a inserire tutto e il Ovviamente questa cosa deve avere una
soluzione differente su questo forse l'ho già accennato ma può aver senso
ripeterlo alcune cose potrebbero un po' cambiare in ambiti particolari Nel senso che sempre di più a livello
professionale ci sono programmi che vanno in esecuzione Forever Nel senso che sui
[Musica] server nel cloud ci sono dei servizi in cui viene lanciato un programma e questo
programma in esecuzione sempre e quindi non è che a un certo punto il vostro quel programma lì si spegne e viene
rilanciato se non per motivi molto particolari quindi l'utilizzo delle strutture di memoria
Ram in certi contesti potrebbero essere considerate come le delle strutture di
memoria tendenzialmente permanenti Nel senso che se i programmi sono attivi e io per dire nella mia esperienza ho dei
programmi che sono stanno girando da 3 anni e quindi se non si può pensare che i dati che ci sono in quel programma
Sono quasi permanenti Eh non c'è tanta diversità e È ovvio che però se in quei casi i programmi il programma si blocca
per qualche motivo e devo farlo ripartire ovviamente tutto quello che c'è nelle strutture dinamiche di RAM si
perde ok Quindi comunque un una soluzione in cui i dati sono salvati e che possono essere recuperati
quando il programma deve ripartire ovviamente ci deve essere E questa soluzione sono i file
m il file di per sé potreste pensarlo come se fosse un grande Array Ok Nel senso
che quando voi avete a disposizione un hard disk questo hard disk ha una sua dimensione
che va da zero alla sua dimensione massima senò se avete un non so un hard disk da 250 GB Ok tutti i b che ci sono
al suo interno hanno un indirizzamento che viene fatto attraverso la sua posizione in Byte come se fosse un Array
Ok Quindi il byte 0 dal Byte 0 al byte fino a 250.000 che è la dimensione massima
Ok Ehm ci sono delle situazioni dei degli usi particolari in cui tutto il disco
può essere usato effettivamente in quel modo cioè eh Alcuni programmi speciali possono
avere dei dischi dedicati per loro e a quel punto aprono il disco come se fosse un Array e lì dentro ci lavorano come se
fosse un Array quindi si gestiscono lo spazio del disco in modo totalmente libero ok
Eh se io ho un accesso al disco diretto è libero dal punto di vista delle
prestazioni ho il massimo possibile perché non passo attraverso il lavoro di qualche altro
strato di software ok E adesso vedrete perché la cosa invece può essere diversa nella normalità Quindi questo è un uso
un po' particolare ma per dirvi di per sé un disco è un Array di Byte e normalmente vedremo che noi non lo
useremo in questo modo perché questo è un uso un po' particolare ma chi usa il disco tra virgolette a basso livello
e lo usa in questo modo Ok ha a disposizione una serie di Byte e l' indirizza a suo piacimento
chi lo usa in questo modo è nel 999% dei casi il sistema operativo Ok Quindi il sistema operativo è quello che si
formatta i dischi li predispone eccetera e poi ci lavora dentro direttamente lui ok lui lo usa
come questo Array di Byte e vi accennerò adesso alcuni dettagli su come si comporta ma comunque lui fa
questo ok Quindi ha il disco a sua disposizione e ci lavora su direttamente tanto per accennare In
quali casi potrebbe esserci una cosa diversa ehm normalmente il disco viene dedicato
al sistema operativo e poi lui fa da tramite Però come saprete il sistema operativo in realtà cos'è è un insieme
di programmi Quindi per fare queste operazioni di gestione del disco occupa del tempo esegue delle istruzioni quindi
fa delle operazioni lui eh Solo per darvi a disposizione l'accesso al disco ok Eh se io voglio avere il massimo
delle prestazioni dal disco eh posso dedicare ovvio devo avere una macchina che ha più dischi il disco di sistema
con cui parte la macchina e puoi avere dei dischi di dati a disposizione dei programmi speciali uno degli esempi m
più frequenti di utilizzo del disco diretto è l'utilizzo da parte dei database
usati in modo professionale Ok normalmente un database come lo userete Probabilmente voi l'anno
prossimo verrà comunque gestito lo spazio del disco comunque tramite il sistema operativo Ma se io voglio
ottenere il massimo d un database posso dedicare un disco o più dischi a secondo delle esigenze direttamente al database
quindi il database a quel punto non passa più tramite il sistema operativo per accedere al disco e quindi migliora
ulteriormente le prestazioni Considerate che non so cosa vi spiegheranno l'anno prossimo sui database i database sono un
po' come delle macchine che hanno tante prestazioni no E in genere ormai oggi per gestire gli
attivi ci si riferisce a un database perché ha un mucchio di eh vantaggi rispetto ad altri però è un po' come se
uno non sa usare bene È un po' Come avere una Ferrari e non essere capa a cambiare marcia parto in prima E anche
se ho una Ferrari con la prima forse arrivo a 90 all'ora oltre non ci vado quindi non basta avere un database per
riuscire a avere delle ottime prestazioni Ok quindi devo comunque saperlo usare in modo serio perché
finché ci faccio dei giochi è una cosa appena vado oltre sulle richieste di prestazioni potrebbe comportarsi male
anche un database quindi l'hard disk è una RID Byte m ho usato direttamente o nella maggior
parte dei casi nella quasi tot totalità dei casi da parte del sistema operativo l'hard disk che ha una sua
dimensione fisica poi in realtà la dimensione fisica può essere a seconda di come è fatto fisicamente il
disco 200 faccio l'esempio di 250 GB potrebbe essere fatto da cinque dischi da 50
GB ok Oppure se sono dischi SSD quelli digitali a stato solido Quindi fatti dai
circuiti elettronici in realtà saranno che ne so uno o o due schedine di memoria
ok Quindi comunque la capacità totale la vedo con dal punto di vista già della somma delle caratteristiche fisiche m
Considerate che anche solo un piccolo accenno c'è tantissima differenza tra gli hard disk normali e g SSD lo avrete
probabilmente sperimentato personalmente ma proprio perché dal punto di vista dell'implementazione Fisica c'è molta
differenza nel senso che in un caso sono circuiti elettronici non c'è nessuna parte in movimento quindi la velocità
tra virgolette la velocità della luce poi i dati Si si spostano appunto a velocità molto ate poi non è veloce come
la RAM perché uno dice ma anche la RAM è un circuito elettronico La differenza è che siccome la memorizzazione su questi
circuiti elettronici deve essere permanente perché stiamo ragionando in termini di disco con dati permanenti
ehm la permanenza nel circuito richiede un processo che di diciamo tipo di di
fixing di fissaggio dell'informazione che richiede qualche Eh millisecondo quindi i tempi di eh per rendere stabile
il cambio da 0 a 1 del bit nell SSD è è più lento rispetto al cambio 01 nella memoria RAM perché la memoria
RAM Cambia solo sul fatto che è presente o non è presente la corrente e e quindi è velocissimo a fare il cambio perché
sono transistor in qui se c'è la corrente è a uno se non c'è la corrente a zero però se tolgo la corrente va
tutto a zero no mentre invece qui ne nei disch SSD se tolgo la corrente se era uno deve rimanere uno senò non sarebbe
un disco permanente ok Quindi questa permanenza è fatta da un procedimento che richiede un tempo di fissaggio di
questo cambio di valore ma è comunque diciamo adesso non mi ricordo ma credo sia
tipo tra una cinquantina di volte Forse 100 volte più le rispetto alla ram Ok invece l'hard disk Il problema è che uno
ci sono delle parti che girano quindi ci sono dei dischi che stanno girando Ok E visto dall'alto immaginate che questo è
il disco le informazioni sono concentriche quindi sono dei
dei percorsi magnetici Ok concentrici in cui sono scritti gli Zer E1
Il problema è che se ho l'informazione in questo punto qua Ok il tutto viene letto da un braccio su cui gira una
testina Quindi visto Eh questo è visto verticale la testina sarà una cosa fatta così no che deve leggere il disco che ci
sta sotto questa testina siccome i i le tracce queste si chiamano tracce i i cerchi concentrici eh
sono tante Magari la testina è in questo punto Ok per andare a leggere in questo punto
si deve spostare in questa direzione e ci mette un certo tempo a spostarsi Ok poi non solo c'è anche il fatto che
questo disco sta girando e devo aspettare che quel disco faccia il giro per arrivare sotto alla
testina Quindi abbiamo un doppio tempo di attesa il tempo di rotazione del disco ok E il tempo di spostamento della
testina ok anche lì i dischi magnetici non so se vi è capitato ancora di documentarvi
ovviamente sono più prestazionali se il disco gira più veloce quindi sono dischi a 5.200 giri al minuto a 10.000 giri al
minuto ovviamente sono veloci il doppio perché il disco ci mette la metà del tempo a fare tutto il
disco di il giro di rotazione però qui parliamo di migliaia o decine di migliaia di
volte più lento rispetto alla ram OK e quindi centina di volte più lento rispetto
al al dischi a stato solido tant'è che ormai ci si sta spostando quasi totalmente verso il disch stato solido
non totalmente perché comunque il rapporto di costo tra la capacità e il prezzo non sono ancora paragonabili
Ok esempio banale che ne so un hard disk da 2 o 4 ta magnetico probabilmente costa meno di €100 Presumo 4 ta in SSD
costerà €500 Quindi tu rapporto almeno di 5 o se volte no Quindi se io ho da usare la memoria per il computer che ha
diciamo delle informazioni di base non diciamo usate frequentemente ma non troppe va benissimo un SSD soprattutto
per le operazioni che in cui il sistema operativo usa il disco per le sue attività se io devo memorizzare eh tutte
le foto che ho fatto nella mia vita in cui magari ho 4 o 5 TB di di foto quelle quelle informazioni lì le vado a vedere
quante volte all'anno due volte l'anno forse o magari devo solo memorizzare lì foto per chissà quando E allora è
inutile avere una cosa estremamente veloce ma anche estremamente costosa Ok quindi la scelta del tipo di supporto da
utilizzare Dipende anche dal Eh diciamo dal tipo di utilizzo che si andrà a fare chiusa Piccola parentesi
sul sul caratteristica fisica del del dispositivo di memorizzazione permanente Sta di fatto che sia fatta da più dischi
sia fatta da più schede alla fine io ho una visibilità di una capacità del disco ok questa capacità del disco può ancora
essere suddivisa adesso forse siamo un po' anacronistici con 250 GB Andiamo sulle dimensioni
più più sensate diciamo 1 TB va oppure 512 GB va bene 2 sei
abbastanza quasi fuori fuori formato Eh allora togliamo un attimo questa roba qua Allora
ehm questa bene tutta la capacità del disco può
essere vista come un tuttuno oppure c'è un un'ulteriore tecnica di suddivisione in partizioni probabilmente l'avete
sentito dire cioè se io ho un disco estremamente grande immaginiamo 1 TB potrei decidere di suddividerlo una
volta si faceva più spesso adesso un po' meno però diciamo il motivo qual è È che diciamo se io suddivido il
disco con diciamo delle logiche di eh competenza Ok ehm ho dei vantaggi sul fatto che
ehm sono in qualche modo più segregati i dati nelle due zone del disco Diciamo che aveva più senso una volta come
accennavo per il fatto che questa suddivisione portava al fatto che le le parti del disco fisico che venivano
usate erano distinte ok e e quindi venivano usate proprio le parti fisiche del disco con frequenze di di di accesso
differenti e soprattutto se io dividevo che ne so un terz e
2/3 per quello che vi spiegherò tra un po' i dati quando io faccio le partizioni sono segregate quindi non ci
sarà mai modo del fatto che i dati il tema se non c'è più spazio di qua li vado a mettere da questa parte ok Quindi
c'è un contenimento dei dati all'interno della partizione del disco e questo eh quando c'era il problema del dei
tempi di spostamento se io i dati li ho più vicini i i tempi di spostamento della testina e di lettura nella traccia
erano essendo più vicini erano più contenuti quindi ci si metteva va meno a raggiungere tutti i dati Ok adesso che e
i dischi sono tendenzialmente SSD Il partizionamento non ha più tutto sto senso perché tanto l'accesso è come
nella RAM ad accesso diretto e quindi i tempi di per andare a prendere un dato che è vicino dal punto di vista della
posizione nell'array o lontano è identico Ok mentre invece tra un punto vicino e uno lontano se il tutto è su un
disco fisico potrebbe essere che la testina si doveva spostare aspettare che arrivasse la traccia eccetera no Quindi
questo è il motivo per cui probabilmente eh viene usato abbastanza di meno viene usato ormai solo adesso dal punto di
vista logico per segregare dire i dati da una parte sono in una partizione e gli altri sono ben distinti questo
perché come vi accennavo i dati non possono questo non vuol dire che non posso
andare ad accedervi Ok ma li devo eh copiare come se fossero due dischi diversi cioè quando io partizioni il
disco è come se fisicamente lo staccassi e ci fosse del mio disco fisico da 1 taa due dischi che ne so uno
da 250 e l'altro da 750 ok E questa cosa qua questa suddivisione molto difficilmente può
essere risistemata Ok quindi lo studio del partizionamento del disco andrebbe fatto con attenzione del tipo lo divido
a metà ma poi se è metà se voglio cambiare il bilanciamento diventa difficile
Ok detto questo adesso m immaginiamo di avere il disco tutto intero poi in realtà il ragionamento che
faccio da adesso in poi Eh potrebbe valere anche all'intero della singola partizione
Ok ecco per esempio quando vi dicevo che il disco poteva essere messo a disposizione di un programma io potrei
anche decidere che invece di avere tutto un disco posso dire ho il disco da un Tera ne do 250 ai programmi di base
250 ad un programma specifico e il resto per dati generici Ok quindi dividendo la partizione potete decidere di dare una
partizione intera al programma del database Per esempio invece che un disco intero detto questo siccome l'array
ehm di Byte è diciamo gestibile direttamente il sistema operativo deve eh Cioè è lui che prende in carico
tendenzialmente Eh il disco Anzi tendenzialmente il disco di sistema disco con cui parte il
computer viene dato in carico al sistema operativo che è un programma non dico come gli altri ma è un programma Quindi
è un software che gestisce eh delle operazioni Come si utilizza il disco quindi dal punto di vista logico Eh cosa
succede che io m scrivo all'interno di questo Array una serie di di informazioni quindi occupo una porzione
del disco ok poi cosa succede che eh Arriva un altro programma ne usa un'altra porzione usiamo un colore
diverso usa una porzione più grande Poi ne arriva un terzo Usa questa porzione
qua eccetera Il problema è che i file Voi sapete che non è che sono di dimensione fissa ok cioè io questo qua
magari ha scritto eh 2 2 KB di dati questo ne ha scritti 7 KB e questi ne ha scritto 1 kB
ok E il resto qua immaginiamo che sia tutto libero a un certo punto quello verde deve incrementare e aggiungere
delle altre cose Beh qui è facile dietro lo spazio è libero ok E quindi lui si allarga e occupa più spazio e quindi
questa cosa magari rà 4 KB se se deve espandersi quello rosso il problema è che avete presente l'array se
il byte successivo è occupato Non posso scriverci sopra no senò perdo i dati che ci sono dietro Ok quindi che cosa fa
dice Vabbè mi segno che da questo punto qua devo saltare al primo spazio vuoto Ok quindi salto avanti e comincio a
usare una parte per espandersi ok poi di nuovo il verde vuole espandersi Allora farà la stessa cosa Quindi dice
Beh salto avanti di qua e occupo questo spazio Qui abbiamo gestito solo delle crescite potrebbe essere anche
che che il primo invece di occupare 2k a un certo punto si riduca e voglia metterne solo una
parte Quindi così e questo qua Torna a essere libero quindi se il rosso volesse
Aggiungere ancora spazio Cosa fa Dice bene Oh c'è spazio libero qua vado qua e questo diventa
rosso poi è finito questo spazietto allora da qua torna a prenderne dell'altro qua
dietro quindi vedete come in realtà siccome i contenuti del disco sono dinamici eh l'unica soluzione è che
quello che io qui immaginiamo con il file rosso Eh Come faccio a evidenziarlo
diversamente ancora c'è qua non c'è un giallo
da perché non è molto Dio quindi qui ho eh
7k seguiti da che ne so qui 1k poi torna qua indietro ci sarà un altro K e poi un altro K al
fondo dal punto di vista logico io come applicazione vedo 10k di file Ok quindi
eh il sistema operativo si prende lui in carico di utilizzare al meglio lo spazio del
disco In modo tale che l'applicazione non si debba andare a gestire anche lei il disco per sapere dove scrivere quindi
l'applicazione vedrà sempre solo un Array di Byte del suo file non l'array di Byte del disco ma l'array di Byte del
suo file come se fossero tutti uno di seguito all'altro ma nella realtà qui succede che il file è fatto da un primo
pezzo un secondo pezzo un terzo pezzo e un quarto pezzo ok E a seconda di cosa aggiungo O tolgo Quindi se aggiungo o se
restringo o allargo il mio file dal punto di vista logico è il sistema operativo che si preoccupa di mettere a
posto questa cosa Questo è il problema Non so se se vi è ancora giunto all'orecchio se
esistono ancora questi problemi se avete un disco magnetico così è il famoso problema della
frammentazione del disco cioè la frammentazione vuol dire che questi pezzi sono lontani ok Quindi fisicamente
tornando all discorso fisico di Come è fatto il disco se un file 10k è fatto eh da quattro pezzi scritti in quattro
pezzi diversi del disco per leggere 10k il disco cioè il lettore del disco deve fare avanti indietro un po' di volte e
quindi il tempo di lettura è abbastanza lungo Ok quindi esistono dei sistemi di
deframmentazione che dicono Ok riguardiamo un po' tutto il disco e Mettiamolo in ordine Ovviamente questo
richiede del tempo in cui dico bene Prendo dello spazio libero e cerco di trasferire tutti i pezzi in modo tale
che siano tutti a Vicenti Poi è ovvio che un file è una cosa dinamica e quindi lo metto a posto ma poi dopo un
po' che lo uso di nuovo Potrebbe frammentarsi ok Questo cosa come vi dicevo era un grosso problema perché se
in un disco ci sono centinaia o migliaia molto più probabilmente di file e le applicazioni
usano tanto i file il tempo trascorso andare avanti indietro F andare avanti indietro la Ina per cercare i dati
leggere i dati richiede non poco tempo questo problema come vi dicevo è
diventato relativamente secondario nel momento in cui si utilizzano G SSD perché passare
da qui al byy successivo o da qui a qui non ha un tempo per far muovere nessun dispositivo fisico quindi il tempo che
il circuito C mette a passare da questo blocco proseguisse qui subito di fianco o O qua o laggiù ci mette lo stesso
tempo ok Quindi questa frammentazione esiste ancora ma programmi di deframmentazione praticamente non si
usano quasi più perché rimettere in ordine questa cosa sul disco SSD non ha tutta questa
esigenza detto Questo invece è utile sapere un'altra cosa io qui adesso ho fatto degli esempi mettendo 1k 4K 7k
2k il problema cos'è È che se io ogni volta che aumento il file lo aumento esattamente di ciò che ho
bisogno a volte potrei anche incrementarlo di 2 o tre Byte Ok allora cosa succede che magari Qui c'è un
pezzettino piccolissimo solo per poco e quindi è vero che non ci sono parti in movimento
no ma Come avrete già cominciato a intuire usando i puntatori in RAM questi sono puntatori su disco quindi vuol dire
che ci deve essere del codice che viene eseguito per dire ok Sono arrivato al fondo Qui c'è l'indirizzo mi sposto di
là allora se questo è tanto frammentato Vuol dire che comunque c'è parecchia elaborazione per andare a passare da un
blocco all'altro altro ok Per questo motivo Quando viene Allora
questa gestione del disco invece di essere esattamente delle dimensioni che servono viene fatta a blocchi di una
certa dimensione e questo è lo scopo dell operazione che avete sempre probabilmente fatto senza sapere cosa
faceva che è la formattazione di un disco la formattazione di un disco la potete fare alla cieca dicendo Fai le
cose di default Oppure la posso anche eventualmente customizzare in che cosa potrebbe
servirmi customizzare Allora la formattazione Cosa fa prende il mio hard disk da tot e
lo divide in tanti blocchi tutti della stessa dimensione quindi è come se diventasse
un Array ma non più un Array di singoli Byte Ma è un Array di blocchi Ok per cui qui ci sarà il blocco 0 blocco 1
blocco 2 blocco 3 blocco 4 eccetera la dimensione Allora il default oggi mi pare sia 4
KB Però potrebbe essere anche più piccolo o più grande Qual è la differenza la
differenza è questa che quando viene vengono viene fatta la scrittura dei dati su disco il sistema operativo va a
usare un blocco e occupa tutto il blocco Quindi se voi fate un file in cui ci scrivete Ciao Ok
che sono quattro caratteri il sistema operativo vi assegna un blocco da 4.192 by se l'avete formattato standard
quindi tutto il blocco vi occup poi occupate un pezzettino microscopico ma tutto il resto è comunque
occupato Infatti più avanti Quando vedremo eh Le informazioni di occupazione del
disco c'è l'occupazione reale e l'occupazione Eh diciamo
logica perché immaginiamo se io ho tanti blocchi e fossero tutti occupati da e avessi 1000 blocchi tutti occupati per 2
Byte io avrei occupato 2000 Byte Ma siccome sono blocchi da 4K Ok se ne ho 1000 ho occupato 4 mega anche se in
realtà sono solo 4.000 caratteri quelli che sono occupati veramente quindi c'è differenza tra l'occupazione quindi lo
spazio disponibile vero e lo spazio occupato vero Ok perché che lo spazio disponibile dipende da quanti blocchi
sono ancora a disposizione ma magari io potrei avver esaurito i
blocchi a esposizione e quindi non posso più creare file nuovi Ok ma magari i file che c'ho li posso ancora far
crescere perché all'interno del loro spazio possono aumentare i Byte che occupano nel blocco ok Questo perché per
urre quella frammentazione e far sì che diventa Comunque più facile accedere agli elementi perché sono a blocchi
interi quindi sappiate che la formattazione divide il disco in blocchi e giusto la cosa che volevo
spiegarvi è perché è possibile customizzare quindi differenziare la formattazione se voi
per esempio fate vi occupate normalmente di di video Ok i video sono tutte cose che occupano centinaia di Mega m e
allora è e sono centinia di Mega tutti continuativi in un unico file perché il video comincia e c'ha tutte le immagini
per normalmente che ne so un film da 2 ore sono 2 GB Ok a seconda della risoluzione però tendenzialmente o 1 Gig
o 2 Gig a seconda della risoluzione della compressione quindi di blocchi da 4K ne uso tantissimi m Allora se io
faccio video come mia attività principale è inutile avere il file system quindi Scusate il il disco diviso
con una formattazione così fine perché comunque sono
tutti elementi grandi e quindi potrei ridurre questa cosa dicendo faccio blocchi da 20 KB per esempio Cioè anche
posso farlo da 100 perché comunque se lo facessi da 100 vuol dire che io occupo un c un col film una certa
parte poi se l'ultimo pezzo ne occupa solo un pezzo e tutto il resto dei 100 KB sono comunque sprecati
ok Quindi bisogna un po' scegliere la taratura Ma fare blocchi
più Eh blocchi più grandi in quel caso comunque mi dà delle prestazioni migliori ok e Eh mi evita di sprecare
dello spazio al contrario se io faccio un'attività che genera tantissimi file
ma tutti molto piccoli come vi ho detto ogni file occuperebbe almeno
4K non so se esiste un'attività del genere ma ci fosse e e tutti non so avessero file che
occupano eh qualche poche centina di Byte e Sarebbero
tutti blocchi con la memoria quasi completamente inutilizzata Ok allora in quel caso potrei anche ridurre la
dimensione del del blocco a so 2k o 1k Ok quindi diciamo normalmente la formattazione si autot Tara in base
anche alla dimensione del disco ok Quindi se il disco è molto grande vengono fatti blocchi un po' più grandi
fino ad arrivare 16 KB e se il disco è più piccolo Riduce la dimensione del blocco però questa dimensione la potete
decidere in fase di formattazione ok Quindi questo è il modo in cui il sistema operativo gestisce a
basso livello il disco quindi il disco lo formatta e eh sulla formattazione ci sono questi blocchi
sopra questo tipo di infrastruttura il sistema operativo fa ancora un ulteriore servizio cioè il
servizio di organizzazione dei file nel senso che se uno vi dicesse una volta era così su
questo disco i file si chiamano file 1 file 2 file 3 file 4 tutti flat ok Quindi tutti mono eh
diciamo non organizzati diventa difficilissimo da gestire quindi il sistema
operativo quindi il sistema operativo sistema operativo che abbiam detto che ha che è
un insieme di di programmi ha una parte di se stesso quindi una parte di programmi che si chiama file system file
system manager ovvero il gestore del sistema dei file
Mh e quindi in realtà anche il il gestore del file system Che cos'è il file system il file
system è il modo in cui sopra questa struttura logica di eh bloc di Array di blocchi il sistema operativo vi
eh realizza una struttura d' albero quindi una struttura d'albero ad albero
rovesciato in cui in cima c'è la radice che in inglese si chiama Rot e poi a
scendere Ci [Musica] sono le
cartelle Directory e poi di file
ok Quindi questa è la visione logica che vi viene fornita dal sistema operativo quindi voi non vedrete mai a meno che
come vi dicevo all'inizio non facciate un'applicazione che va a basso livello a gestirsi direttamente il disco cosa che
non credo che capiterà mai a voi ehm normalmente voi Passate sempre tramite il sistema operativo che
oltre a gestirvi i file concatenati con quella sequenza di di agganci vi li rende anche disponibili con una
navigazione ordinata di Directory
e cartelle e di file questa gestione qua si chiama file system
ok anche il file system anche mettere il file system su disco è un'operazione
di chiamiamola tipo formattazione Ok quindi ma diciamo è meglio dire creazione del file system su disco
perché perché questa organizzazione in realtà è già un modo per utilizzare in parte il disco perché questo tipo di
organizzazione deve essere in qualche modo messa sul disco Ok ehm perché c'è una creazione del file
system Perché i tipi di file system sono tanti Ok quindi ci sono tanti tipi di file
system voi vi direte Ma perché non ce n'è uno solo per tutti perché il come vi ho detto il file
system manager è una componente del sistema operativo il sistema operativo è un insieme di programmi e quei programmi
li scrivono dei programmatori e ogni sistema Oper è scritto da programmatori diversi e che decidono di fare le cose
in un modo diverso perché ognuno pensa di essere più in gamba e più geniale degli altri Quindi i sistemi operativi
sono in parte legati all'hardware e neanche per ormai sempre Una volta erano legga all'hardware quindi gli hardware
della Apple avevano il sistema operativo della Apple gli hardware del mondo IBM avevano un sistema operativo
dell'ibm che era poi Windows prima do e poi Windows e poi è nato Linux che usa lo
stesso hardware del mondo del mondo Windows poi negli anni anche il mondo
Apple si è messo a usare lo stesso hardware Intel del mondo Windows adesso di nuovo Apple ha deciso da 34 anni di
staccarsi rifarsi di nuovo dei processori E quindi lavora Eh sta migrando quasi Ormai il
100% delle sue realizzazioni sui suoi processori quindi il processore e
l'hardware viene gestito dal sistema operativo e quindi il il file system manager È scritto nel sistema operativo
e sono diversi perché ogni sistema operativo decide di mettere delle funzionalità un po' particolari sue
specifiche in parte è stata anche un'evoluzione negli anni nel senso che una volta i sistemi operativi dovevano
gestire i computer i famosi personal computer si chiamavano così perché Perché il computer lo poteva usare un
utente solo era suo girava un programma per volta le esigenze erano piuttosto
limitate Bastava che il file avesse un nome quell'utente lo conosceva e buonanotte poi il problema è che andando
avanti i programmi sono diventati programmi multiutente e allora tra le caratteristiche del file ci deve essere
anche la proprietà del file i diritti che io do di accesso al file e questi dove sono sono necessariamente delle
caratteristiche che vado a mettere nel file e nelle cartelle quindi il il System Quindi
questa gestione dei file diventa più sofisticata e quindi cambia le sue informazioni che va a
scrivere sul disco e quindi a seconda del sistema operativo e anche negli anni i file system sono cambiati e
quindi oltre a avere il disco sopra il disco il sistema operativo va a metterci una sua organizzazione
tale per cui tutti sono organizzati in questo modo logico a radice e sotto cartelle ma
il modo in cui viene fatto è diverso da un sistema operativo all'altro Ok va bene proseguire la prossima volta
Heads up!
This summary and transcript were automatically generated using AI with the Free YouTube Transcript Summary Tool by LunaNotes.
Generate a summary for freeRelated Summaries

Analisi dei Metodi di Gestione dei File in Java
Il video fornisce un'analisi dettagliata dei metodi di gestione dei file in Java, spiegando le differenze tra metodi statici e dinamici, e come utilizzarli per operazioni sui file. Vengono presentati vari metodi, come 'createTempFile', 'exists', 'canExecute', e altri, con esempi pratici e spiegazioni sui diritti di accesso ai file.

Gestione delle Date in Java: Utilizzo di SimpleDateFormat e File
Il video tratta della gestione delle date in Java, focalizzandosi sulla classe SimpleDateFormat per la conversione tra stringhe e oggetti Date. Viene spiegato come memorizzare le date in formato numerico per un confronto più efficiente e come utilizzare metodi relativi ai file, come lastModified e setLastModified.

Introduzione alla Classe File in Java: Gestione dei File e Directory
Il video fornisce un'introduzione alla classe File in Java, spiegando come interagire con il file system e gestire i file e le directory. Viene discusso il concetto di oggetti File, i costruttori, e i metodi principali per verificare l'esistenza di file e directory, oltre a come crearli.

Understanding File Systems and File Management in Java
This video delves into the intricacies of file systems, focusing on how disks are partitioned and formatted. It explains the structure of file systems, the characteristics of files and directories, and how Java handles file management through specific classes.

Introduzione alla Programmazione: Vettori e Record in Java
Il video esplora i concetti fondamentali di programmazione in Java, concentrandosi sui vettori e sui record. Viene spiegato come i vettori contengano elementi dello stesso tipo e come i record possano contenere informazioni di diversi tipi, utilizzando classi e oggetti per gestire i dati in modo efficace.
Most Viewed Summaries

A Comprehensive Guide to Using Stable Diffusion Forge UI
Explore the Stable Diffusion Forge UI, customizable settings, models, and more to enhance your image generation experience.

Pamaraan at Patakarang Kolonyal ng mga Espanyol sa Pilipinas
Tuklasin ang mga pamamaraan at patakarang kolonyal ng mga Espanyol sa Pilipinas at ang mga epekto nito sa mga Pilipino.

Pamamaraan at Patakarang Kolonyal ng mga Espanyol sa Pilipinas
Tuklasin ang mga pamamaraan at patakaran ng mga Espanyol sa Pilipinas, at ang epekto nito sa mga Pilipino.

Kolonyalismo at Imperyalismo: Ang Kasaysayan ng Pagsakop sa Pilipinas
Tuklasin ang kasaysayan ng kolonyalismo at imperyalismo sa Pilipinas sa pamamagitan ni Ferdinand Magellan.

Ultimate Guide to Installing Forge UI and Flowing with Flux Models
Learn how to install Forge UI and explore various Flux models efficiently in this detailed guide.