Collegamento fisico: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: Elimino interlinks |
Nessun oggetto della modifica |
||
Riga 3:
In [[informatica]], si dice '''collegamento fisico''' (in [[Lingua inglese|inglese]] ''hard link'') l'associazione del nome di un [[file]] al suo contenuto.
Un collegamento fisico fa riferimento ai dati
==Descrizione==
La creazione di un file comporta sempre la simultanea creazione di un collegamento fisico che permetta ai programmi di riferirsi ai dati tramite un nome nel ''[[file system]]''; dati privi di collegamenti fisici non sono accessibili, e a meno che non vi siano altri riferimenti ad essi (come ad esempio nel caso di file in uso da parte di uno o più [[Processo (informatica)|processi]]) lo spazio da loro occupato ritorna a far parte dello spazio disponibile.
I file system tipici dei sistemi [[Unix]], [[Unix-like]] ed ''NT-like'' (tutti i sistemi della famiglia Windows NT che condividono il sistema [[NTFS]], quindi non i cosiddetti "9x" come Windows95 ecc) prevedono la possibilità di avere più collegamenti fisici allo stesso file, mentre altri file system prevedono un solo collegamento per file. ▼
I sistemi operativi generalmente impediscono di creare più di un collegamento fisico alla stessa [[directory]], per evitare problemi di ambiguità nel risalire la gerarchia di directory e per evitare che si possa includere parte di una gerarchia di directory all'interno di sé stessa (cosa che creerebbe problemi ai programmi che esaminano ricorsivamente il contenuto di un ''file system'', perché potrebbero non terminare mai il loro compito).
▲I file system tipici dei sistemi [[Unix]], [[Unix-like]] ed ''NT-like'' (tutti i sistemi della famiglia Windows NT che condividono il sistema [[NTFS]], quindi non i cosiddetti "9x" come Windows95 ecc) prevedono la possibilità di avere più collegamenti fisici allo stesso file, mentre altri file system prevedono un solo collegamento per file.
==Memorizzazione e funzionamento==▼
▲===Memorizzazione e funzionamento===
Per ogni file o directory nei sistemi [[Unix]] ed [[Unix-like]], il file system mantiene un identificativo univoco ([[inode]]) ed un conteggio dei collegamenti fisici che vi fanno riferimento. Un collegamento fisico quindi contiene semplicemente il nome ed il riferimento all'inode del file, senza altre informazioni.
Line 20 ⟶ 21:
''Per creare'' un hard-link in Windows si fa uso del comando seguente: '''fsutil hardlink create NomeNuovoFile NomeFileEsistente'''
=== Alternative ===
Nei sistemi basati su [[Linux]], a partire dalla versione 2.4.0 del [[kernel]] è possibile usare il comando [[mount]] con le opzioni <tt>--bind</tt> o <tt>--rbind</tt> per far apparire una directory o un file in più punti della gerarchia di directory del sistema, di fatto creando l'equivalente di un collegamento fisico che però può essere tra ''file system'' diversi e che può essere anche riferito ad una directory, ma che non è persistente (ovvero va ricreato ad ogni nuovo avvio del sistema).<ref>{{cita web
|url=http://linux.die.net/man/8/mount
|