[so] Subiect examen

Adriana Dinca dinca.adriana2 at gmail.com
Fri Jun 2 18:45:36 EEST 2017


Multumesc pentru lamuriri.
Cred ca imi este mai clar.

Daca am un fisier obisnuit (dentry + inode) si creez un hard link doar se
mai adauga un dentry care refera acelasi inode.

Daca am un fisier obisnuit si creez un simbolic link se creaza un dentry si
un inode nou, iar inode-ul respectiv va contine calea catre fisierul
obisnuit.

Ce nu stiu e cum este accesat inode-ul care contine datele utile.
De exemplu, daca deschid un fisier care e simbolic link, SO se uita in
inode-ul fisier-ului, vede ca e simbolic link si incearca sa deschida
fisier-ul de la calea continuta in inode-ul rsp. ?
SO trebuie sa se uite in calea din inode-ul simbolic link-ului si sa
identifice in ce tabela de dentry-uri se gaseste si apoi sa refere inode-ul
cu datele?
Asta ar insemna ca daca vreau sa deschid un simbolic link in urma unui
apelului open se trece prin 2 inode-uri pana ajung la date?

Adriana





Pe 2 iunie 2017, 17:43, Razvan Deaconescu via so <so at cursuri.cs.pub.ro> a
scris:

> Adriana Dinca via so <so at cursuri.cs.pub.ro> writes:
> > Buna,
> >
> > Mai am o nelamurire legata de un subiect dat in sesiunea din
> >
> > 1.septembrie.2015.
> > Cerinta este urmatoarea:
> > "Un sistem de fisiere dispune de limitari la numarul maxim de fisiere
> care
> > pot fi create(inode-uri), numarul maxim de nume de fisiere(dentry-uri),
> > dimensiunea maxima a unui fisier si spatiul total ocupat de toate
> > fisierele. Un utilizator creeaza intr-o bucla infinita hard-link-uri.
> Care
> > dintre limitarile de mai sus va cauza oprirea crearii de hardlink-uri?
> Dar
> > in cazul crearii de simbolic link-uri?"
> >
> > Am cautat informatii si am aflat ca pentru hardlink-uri nu exista nicio
> > limita impusa de sistemul de fisiere, singura limitare fiind data de
> > dimensiunea reference-counter-ului, iar pentru crearea de simbolic
> linkuri,
> > limita este setata static la implementarea sistemului de fisiere.
> >
> > Imi scapa ceva in explicatia asta?
>
> Un hard link înseamnă un nou nume pentru un inode, adică un nou
> dentry. Limitarea care oprește crearea de hard link-uri este numărul
> maxim de nume de fișiere (dentry-uri).
>
> Un link simbolic înseamnă atât un inode cât și un nume pentru acel inode
> (numele link-ului). Conținutul inode-ului este calea/numele/link-ul
> către inode-ul referit. Adică în cazul creării de link-uri simbolice,
> limitarea vine și de la numărul maxim de fișiere (inode-uri) cât și de
> la numărul maxim de nume de fișiere (dentry-uri).
>
> De exemplu, în imaginea de aici[1], atât "File 1" cât și "'Hard Link' to
> File 1" sunt hard link-uri. Nu poți spune că doar una e hard
> link. Ambele sunt hard link-uri. Majoritatea fișierele au un singur
> (hard) link.
>
> "File 1 content" e inode-ul referit de cele două link-uri hard.
>
> "'Symbolic Link' to File 1' este un nume, adică un (hard) link, pentru
> inode-ul "Symbolic Link content containing path to File 1". Inode-ul
> este un inode de tip symbolic link, iar conținutul său referă
> numele/(hard) link-ul/dentry-ul "File 1".
>
> Posibil să nu fie complet clar. Rumegă ce am zis mai sus și apoi dă
> reply aici cu nelămuririle ca să fie totul clar. Nu lăsa aspectul ăsta
> neînțeles.
>
> [1] http://earthlingsoft.net/ssp/blog/graphics/HardVsSymbolicLInks.png
>
> Răzvan
> _______________________________________________
> http://ocw.cs.pub.ro/courses/so/info/lista-discutii
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20170602/27b99e56/attachment.html>


More information about the so mailing list