|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
dimensione settori hard disk
come posso sapere la dimensione dei settori degli hard disk?
esiste un'api? mi sembra che la getvolumeinformation non funzioni a questo scopo. grazie. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
GetDiskFreeSpace(........);
ma se non ricordo male ha qualche limite |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Ma dei settori o dei cluster ?
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
spiego meglio il mio problema:
linguaggio VB6. non permette di scrivere in asm devo accedere a una funzione dos che scrive e legge direttamente dall'hard disk a basso livello ho trovato un vxd che mette a disposizione tutte le funzioni dos e bios passandogli una struttura con la quale verranno riempiti i registri del processore prima di chiamare l'int. la struttura richiesta contiene tra altri dati quello della dimensione del settore.(come me lo ricavo)? mi spieghereste una volta per tutte la differenza tra traccie, cluster, settori,ecc....? grazie |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Il cluster è la dimensione minima indirizzabile dal sistema operativo...
La suddivisone in cluster logica in cluster viene effettuata durante la formattazione... I cilindri dovrebbero essere le varie circonferenze concentriche su cui vengono memorizzati fisicamente i dati... I settori sono siddivisioni (che passano dal centro) a spicchi della superficie del disco... Le testine sono invece le testine di lettura che si occupano di leggere solo una determinata superficie del disco (o una porzione della superficie)... Quindi invidiuando sia un cilindro testina e traccia si possono individuare una serie di dati su una determinata superficie del disco... Il sistema operativo mantiene una tabella all'inizio del disco in cui scrive le varie catene di cluster che un file occupa... Ci dovrà essere una routine del sistema operativo che si occupa di tradurre l'indice del cluster nelle coordinate CHS (Cylinder Head Sector)... |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
non voglio essere puntiglioso ma
cilindro e traccia non sono la stessa cosa? quindi per indirizzare un punto io necessitero' di cordinate x=cilindro o traccia y=settore z=testina e'giusto? so che la dimensione dei settori di un floppy e' sempre di 512 byte ed esistono 2880 settori in questo caso quanto e' grande il cluster? |
|
|
|
|
|
#7 | |||
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
Quote:
Il settore è la posizione sulla circonferenza del cilindro (quindi non è un asse)... La testina la puoi vedere anche come Z... Lo puoi associare ad un sistema di coordinate cilindrico... Quote:
512 byte in ogni unità di allocazione. 2.847 unità totali di allocazione su disco. Le unità di allocazione sono i cluster...ed in questo caso dovrebbero corrispondere con la dimensione della parte di dati individuata dal CHS... In tal caso nei floppy i cilindri sono 80 e le testine 2 (facce)... C = Clindri = 80 H = Testine = 2 S = Settori S = 2880/(80*2) = 18 Settori Il tipo di indirizzamente CHS reale comunque non viene più utilizzato... E' stato sostituito con un tipo di indrizzamento fittizio chiamato LBA (Logical Block Addressing, se guardi nel BIOS ci sono le modalità LBA, CHS, LARGE)... Questo perchè il numero di cilindri era diventato troppo grande per utilizzare un indrizzamento reale (superiore a 1024)... Con il metodo LBA c'è un ulteriore livello di traduzione effettuato dal BIOS o dal controller EIDE (mi sa di più il BIOS)... Quindi le coordinate CHS che il sistema operativo passa alla routine dell'interrupt software che va a leggere sul disco non corrispondono più alla posizione reale in cui il disco andrà a scrivere... Come avvenga la traduzione non lo so... Probabilmente viene aumentato il numero delle testine e viene messo il numero di cilindri al massimo utilizzabile... Secondo me quella che cerchi è la dimensione dei cluster e non dei settori... Anche perchè parlando solo di settori non si individua la più piccola parte indirizzabile del disco...ma il settore è l'intero spicchio del disco (dal centro all'esterno)... |
|||
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Comunque come dice misterx...con la GetDiskFreeSpace puoi ottenere la dimensione del cluster e il numero di settori su cui sta il cluster...
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
GRAZIE PER LE RISPOSTE.
ORA PROVO A VEDERE SE LA DIMENSIONE DEL CLUSTER DEL FLOPPY E' 512 BYTE POICHE' IO HO UN PROGRAMMA DI ESEMPIO CHE UTILIZZA QUEL VXD CHE DICEVO PRIMA E QUESTO DICHIARA UNA COSTANTE SECTORZIZE=512 QUANDO VUOLE LEGGERE DA FLOPPY. |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Sul floppy sono sicuro... Ogni cluster occupa un solo settore...
Me lo ricordo dai vecchi CarbonCopy e DiskDupe |
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Jan 2002
Città: VENICE
Messaggi: 1241
|
Quote:
le testine degli hd si muovono sui piu piatti in contemporanea determinando cosi un'area definita cilindro (in senso verticale..lo spazio occupato dalle testine allineate sui diversi piatti). le tracce invece sono scritte concentricamente su ogni piatto
__________________
...Fight with your heart, and you're Destined For Glory But fight without soul and you will loose it all... |
|
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quindi un cilindro è l'insieme di tutte le tracce leggibili da quella posizione delle testine... Va bene ?
Torna...torna... |
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
X CIONCI
COSA SONO CARBONCOPY E ELTRO??? SONO MICA DEI COPIATORI? SE COSI' FOSSE MI MANDI UN LINK DAL QUALE LI POSSO SCARICARE O SE LI HAI TU ME LI PUOI MANDARE? GRAZIE. |
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
MA SCUSATE, I CILINDRI E LE TRACCE QUINDI SONO SEMPRE IN NUMERO UGUALE,
ANCHE SE UNO INDICA UNA TRACCIA SU UN DISCO MENTRE L'ALTRO INDICA L'INSIEME DELLE TRACCE SUI VARI DISCHI. ANCHE NEL CASO DEL FLOPPY TORNA POICHE QUESTO HA 80 TRACCIE E 80 CILINDRI. CHIEDO CONFERMA: SE ESISTESSE UN HD CON 2 DISCHI CHE HA 1000 TRACCIE I CILINDRI SAREBBERO SEMPRE 1000? |
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
In pratica il cilindro indica quale traccia vuoi leggere utilizzando una determinata testina...
Quindi con 2 dischi uguali con 1000 tracce il numero di cilindri è 1000... |
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Jan 2002
Città: VENICE
Messaggi: 1241
|
Quote:
__________________
...Fight with your heart, and you're Destined For Glory But fight without soul and you will loose it all... |
|
|
|
|
|
|
#17 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
|
|
|
|
|
|
#18 | |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
Quote:
|
|
|
|
|
|
|
#19 |
|
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
2 DOMANDE:
COME POSSO QUINDI RICAVARE LA DIMENSIONE DEL SETTORE? (CHE PUO' ESSERE INTESO COME UN ARCO DI TRACCIA?) COME FUNZIONA IL MODO DI INDIRIZZAMENTO DELL'LBA? |
|
|
|
|
|
#20 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
GetDiskFreeSpace(........); ti rende il numero di settori occupati da ogni cluster...e anche la dimensione del cluster...quindi hai anche la dimensione del settore...
La modalità LBA opera solamente variando il numero di testine e cilindri logici... Quindi la dimensione del settore ricavata nel modo sopra dovrebbe rimanere costante... |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:14.



















