Scroll to navigation

FD(4) Linux Programmer's Manual FD(4)

NOME

fd - dispositivo per dischetti

CONFIGURAZIONE

I dispositivi dei dischetti sono dispositivi a blocchi con numeri primari 2. Tipicamente sono di proprietà di root:floppy (cioè proprietario root e gruppo floppy) e hanno modi di accessi 0660 (accesso con verifica dell'appartenenza al gruppo) oppure 666 (tutti hanno l'accesso). Il numero secondario codifica il tipo di dispositivo, numero del drive e numero del controller. Per ogni tipo di dispositivo (cioè, per ogni combinazione di densità e numero di tracce) esiste un numero secondario differente. A questo numero base occorre aggiungere il numero del drive sul suo controller e 128 se il drive è collegato al secondo controller. Nella seguente tabella di dispositivi, n rappresenta il numero del drive.
:Attenzione: se si usano formati con più tracce di quelle supportate dal drive su può causare un danno meccanico. Provare una volta se sono supportate più delle 40/80 tracce solite non dovrebbe danneggiarlo, ma non è data nessuna garanzia. Se non si è sicuri, non creare i file speciali per quei formati in modo da prevenirne l'uso.
Questi sono i file di periferica che riconoscono automaticamente il formato e la capacità del disco indipendentemente dal drive:
Nome numero di base secondario
fdn 0
File speciali per dischetti da 5.25 pollici a doppia densità:
Nome Capac. Cil. Sett. Testine Numero base
fdnd360 360K 40 9 2 4
File speciali per dischetti da 5.25 pollici ad alta densità:
Nome Capac. Cil. Sett. Testine Num second. base
fdnh360 360K 40 9 2 20
fdnh410 410K 41 10 2 48
fdnh420 420K 42 10 2 64
fdnh720 720K 80 9 2 24
fdnh880 880K 80 11 2 80
fdnh1200 1200K 80 15 2 8
fdnh1440 1440K 80 18 2 40
fdnh1476 1476K 82 18 2 56
fdnh1494 1494K 83 18 2 72
fdnh1600 1600K 80 20 2 92
File speciali per dischetti da 3.5 pollici a doppia densità:
Nome Capac. Cil. Sett. Testine Num second. base
fdnD360 360K 80 9 1 12
fdnD720 720K 80 9 2 16
fdnD800 800K 80 10 2 120
fdnD1040 1040K 80 13 2 84
fdnD1120 1120K 80 14 2 88
File speciali per dischetti da 3.5 pollici ad alta densità:
Nome Capac. Cil. Sett. Testine Num second. base
fdnH360 360K 40 9 2 12
fdnH720 720K 80 9 2 16
fdnH820 820K 82 10 2 52
fdnH830 830K 83 10 2 68
fdnH1440 1440K 80 18 2 28
fdnH1600 1600K 80 20 2 124
fdnH1680 1680K 80 21 2 44
fdnH1722 1722K 82 21 2 60
fdnH1743 1743K 83 21 2 76
fdnH1760 1760K 80 22 2 96
fdnH1840 1840K 80 23 2 116
fdnH1920 1920K 80 24 2 100
File speciali per dischetti da 3.5 pollici ad extra densità:
Nome Capac. Cil. Sett. Testine Num second. base
fdnE2880 2880K 80 36 2 32
fdnCompaQ 2880K 80 36 2 36
fdnE3200 3200K 80 40 2 104
fdnE3520 3520K 80 44 2 108
fdnE3840 3840K 80 48 2 112

DESCRIZIONE

I file speciali fd accedono in modo "raw" ai drive dei dischetti. Le seguenti chiamate ioctl(2) sono supportate dai dispositivi fd:
FDCLRPRM
azzera le informazioni sul supporto (media information, cioè la geometria del disco nel drive) per un drive.
FDSETPRM
assegna le informazioni sul supporto di un drive. Tali informazioni saranno perse quando il disco viene cambiato.
FDDEFPRM
assegna le informazioni sul supporto di un drive (la geometria del disco nel drive). Tali informazioni non saranno perse quando il dispositivo viene cambiato. Ciò disabiliterà la rilevazione automatica. Per poter riabilitare la rilevazione automatica, di deve fare un FDCLRPRM .
FDGETDRVTYP
ritorna il tipo di un drive (parametro nome). Per formati che funzionano in diversi tipi di drive, FDGETDRVTYP ritorna un nome che è appropriato per il più vecchio tipo di drive che supporta questo formato.
FDFLUSH
invalida la cache dei dati relativi ad un drive.
FDSETMAXERRS
assegna la soglia d'errore per riportare gli errori, la terminazione dell'operazione, la ricalibrazione, il reset, e la lettura settore per settore.
FDSETMAXERRS
restituisce la soglia d'errore corrente.
FDGETDRVTYP
restituisce il nome interno del drive.
FDWERRORCLR
azzera le statistiche sugli errori di scrittura.
FDWERRORGET
legge le statistiche sugli errori di scrittura. Queste comprendono il numero totale di errori di scrittura, la posizione e il disco del primo errore di scrittura, e la posizione e il disco dell'ultimo errore di scrittura. I dischi sono identificati da un numero che viene incrementato ogni volta che viene cambiato il disco (o quasi).
FDTWADDLE
Spegne il motore del drive per alcuni microsecondi. Ciò potrebbe essere necessario per poter accedere ad un disco i cui settori siano troppo vicini uno all'altro.
FDSETDRVPRM
assegna diversi parametri del drive.
FDGETDRVPRM
rilegge questi parametri.
FDGETDRVSTAT
restituisce lo stato della cache del drive (disk changed, write protected et al.)
FDPOLLDRVSTAT
interroga il drive e ritorna il suo stato.
FDGETFDCSTAT
restituisce lo stato del controller del dischetto.
FDRESET
reimposta il controller del dischetto, sotto certe condizioni.
FDRAWCMD
invia un comando nudo al controller del dischetto.
Per informazioni più precise, consultare anche i file include <linux/fd.h> e <linux/fdreg.h>, come pure la pagina di manuale di floppycontrol.

NOTE

I vari formati permettono la lettura e scrittura di molti tipi di dischi. Comunque, se un dischetto ha un intervallo tra i settori (inter sector gap) troppo piccolo, le prestazioni possono crollare, fino a causare un attesa di alcuni secondi per accedere ad una traccia completa. Per evitare ciò, usare i formati "interleaved". Non è possibile la lettura di dischetti che sono formattati usando GCR (group code recording), formato usato dai computer Apple II e Macintosh (dischi da 800k). La lettura di dischetti con "settorizzazione hardware" (un buco per settore, e il buoco indice un po' sbilenco) non è supportata. La "settorizzazione hardware" era comune con i vecchi dischetti da 8 pollici.

FILE

/dev/fd*

AUTORI

Alain Knaff (Alain.Knaff@imag.fr), David Niemi (niemidc@clark.net), Bill Broadhurst (bbroad@netcom.com).

VEDERE ANCHE

chown(1), floppycontrol(1), getfdprm(1), mknod(1), superformat(1), mount(8), setfdprm(8)
29 gennaio 1995 File speciali