Upload
tamim-yusufi
View
304
Download
2
Tags:
Embed Size (px)
Citation preview
File Structure Dr. M. Rahgozar
In the Name of GodIn the Name of God
LectureLecture 22LectureLecture 22
بر بر يياجمال اجمال ييمرورمرور
نگاهدار نگاهدار سيستم ها ييسيستم ها داده داده
((File SystemFile System))
2 -2File Structure Dr. M. Rahgozar
سيستم ياجمال يمرور برها ينگاهدار داده
(File System)
؟ يچ3 (File ) فايل ست
سيستم ؟ يچ3 (File System) فايل ست
؟ يچ (Disk )سکيد ست
چگونه داده يلهايفا بهکاربران يدسترسباشد؟يم
2 -3File Structure Dr. M. Rahgozar
سيستم ياجمال يمرور برها ينگاهدار داده
(File System) ؟ يچ3 (File ) فايل ست ا ها يمجموعه داده بوس ( Data ) از واحد بطور عامل لهيکه سيستم
((Operating System شناسا مد ييقابل م يريو باشد. يت( پايدار و مستقل واحد يک فايل ميباشد( Persistentهر ها داده .از
سيستم ؟ يچ3 (File System) فايل ستاز بخش اي مشاهده عامل قابل که سيستم مهم ميباشد ي وظيفه رابطه دو در
: داده فايلهاي نگهداريبا دارد عهده به را
فا ت يريمد • (Directory service ) لهايمشخصات (Storage service) لهايفا يمحتوا ينگاهدار •
2 -4File Structure Dr. M. Rahgozar
نگاهدار ها يسيستم File)دادهSystem)
directoryservice
storageservice
pathname fileID requestedinformation
disk handler
disk
وظايف سيستم در تقسيم است؟ فايل چگونه
2 -5File Structure Dr. M. Rahgozar
نگاهدار ها يسيستم File)دادهSystem)
فا ت يريمد ( Directory ) لهايمشخصات
فايلها نامگذاريمديريت (Logical Naming)فا اطالعاتو مختصاتت يريمد به ( Meta Dataلها ) يمربوطبند و يسازماندهت يريمد (Organizationلها ) يفا يدسته
( Storage) لهايفا يمحتوا ينگاهدار
اي نگهداري گونه به & Persistent )مطمئنو ايدارپفايلهاReliable )
امکانات براي بروزنمودنو حذف، ايجادارائه کاربرانفايلها فايلها مشارکتبه کاربران گذاشتن (Sharing )بين دسترسي امنيتکنترل فايلها )در (Access Securityبه
directoryservice
storageservice
pathname fileIDrequestedinformation
disk handler
disk
2 -6File Structure Dr. M. Rahgozar
نگاهدار ها يسيستم File)دادهSystem)
؟ يچ (Disk )سکيد ست
نوع ي مغناط ک برا يم يسيحافظه که ساز يذخ يباشد استفاده داده فايلهاي يرهشود.يم
خواه ندهيآ يفصلهادر صحبت حافظه انواع مورد در .يمفصال نمود م
ها تيريمد ک سکيد يرو داده ؟ يبا ست
هرگونه ي حذف، جادياعمل داده ا فايلهاي به ديسک دسترسي توسط (Disk)رويديگر (Disk Handler) مستقل واحدک ي وظايف موازات به س يفا و انجام ستميل
.ميشود
directoryservice
storageservice
pathname fileIDrequestedinformation
disk handler
disk
2 -7File Structure Dr. M. Rahgozar
فا يريمد مشخصات (Directory ) لهايت
نگاهدار يگوناگون يهاساختار وجود فايلها مشخصات يجهت:دارد
ساده 1. يا مسطح (Flat Directory Structure)ساختار
سطح 2. دو (Level Directory Structure 2) يساختار
درختواره 3. ( Tree Directory Structure)ساختار
گراف 4. (Graph Directory Structure)ساختار
2 -8File Structure Dr. M. Rahgozar
فا يريمد مشخصات (Directory ) لهايت
ساده - 1 يا مسطح (Flat Directory Structure) ساختار
نگهداري ديسک روي آن آدرس و فايل نام فقط آن در که ساده ساختاريست.ميشود
مي استفاده قابل ابتدايي و کوچک بسيار هاي سيستم براي فقط ساختار اين.باشد
ميباشد آنها نام حسب بر فايلها سازماندهي .تنها بود نخواهد ميسر نام يک با فايل دو .ايجاد
namefileID
files
2 -9File Structure Dr. M. Rahgozar
فا يريمد مشخصات (Directory ) لهايت
سطحي ) - 2 دو (Level Directory Structure 2ساختار
اختصاص و فايلها سازماندهي آن در که باشد مي تر پيشرفته ساختاريمختلف کاربران به گر آنها مي دد.ميسر
بود و نخواهد ميسر کاربران خود سازماندهي .لي
User 1User 2User 3User 4
cat dogdatatest dataA data AX
2 -10File Structure Dr. M. Rahgozar
فا يريمد مشخصات لهايت(Directory)
درختواره- 3 (Tree Directory Structure)ساختار
باشد مي قبل ساختار يافته تعميم .نوع س امکان ميسازد اکه ميسر سطح چندين در را فايلها .زماندهي ميسر را مختلف گروه دو در فايل يک گذاشتن اشتراک به امکان ولي
سازد .نمي يک صورت به فايل هر شود" x/y/catمانند "Pathنام مي .ارائه
X
Y
/X/Y/cat
cat
2 -11File Structure Dr. M. Rahgozar
فا يريمد مشخصات (Directory ) لهايت
گراف - 4 (Graph Directory Structure)ساختار
و فايلها گذاشتن اشتراک به امکان ، قبل ساختار تکميل در ساختار اينارتباط سازد (Link)ايجاد مي ميسر را مختلف گروههاي .بين
امنيت کنترل يا فايل يک فيزيکي حذف مانند مسايلي ساختار اين دراست ممکن فايل يک چون بود خواهند تر پيچيده فايلها به دسترسي
مختلف نام باشد (path)چند .داشته
2 -12File Structure Dr. M. Rahgozar
ب و يارتباط کاربران ل يفا نستميس
(File System Interface)
به مربوط فا عمليات (Directoryلها )يمشخصات حذف يا Directoryايجاد فايلها نمودن باز يا حذف ، ايجاد يک به فايل يک ساختن Directoryمرتبط( فايلها امنيت (Access Rightsتعريف فايلها فهرست نمايش
( فايلها سازي ذخيره به مربوط (Storageعمليات
فايل خواندن فايل روزآوردن به يا نوشتن فايل بستن( جستجوSeek )فايل يک داخل در
2 -13File Structure Dr. M. Rahgozar
فا لهايمشخصات (File Attributes)
فا چه؟ يعنيلها يمشخصات فا به مربوط اطالعات و Metaلها ) يمختصات
Data) باشند مي زير اجزاء : شامل
فايل نوع فايل فيزيکي ديسک ( محل )روي فايل اندازه فايل صاحب نام فايل به دسترسي امنيت روز به و دسترسي ، ايجاد وردن آزمانهاي
فايل
هستند؟ يا کجا اطالعات ن فا به مربوط اطالعات و اي لها يمختصات بگونه
فايل ) به دسترسي مسير از ( Pathمستقلميشوند .نگهداري
name1 fileID
name2 fileID
Meta-data
data
2 -14File Structure Dr. M. Rahgozar
از يد کاربران داده يلهايفا دگاه(Logical / Physical Mapping)
کاربر ديدگاه :اناز رکوردهاي از اي مجموعه بعنوان فايل ميشود (Logical Records) داده يک (تعريف کجا؟.)
ديدگاه :سيستمل يفاازداده فضا بلوکهاي از اي مجموعه عنوان به ديسک شود (Physical Blocks)ي مي .تعريف
جه؟ينت ب فوق ديدگاه دو (Logical / Physical Mapping) .شوند بقطنم گريکديا بايستي
نصورت؟يرايدرغب هافضا ديسکها دونيي روي م يتشک استفاده ( (Fragmentation). شود يل چرا؟... )
Physicalblocks
Logical records
2 -15File Structure Dr. M. Rahgozar
از يد کاربران داده يلهايفا دگاه (Logical / Physical Mapping)
کاربر زيمتما ديدگاه سيستم اننمودن ديدگاه مزا از و يچه ادارد؟ يبيمعا بهمراه را
ا:يمزا – 1 خا سيستم يک به نسبت افزار نرم (Portability )صاستقالل سيستم کارآيي و افزار نرم کارآيي بين (Performance) تمايز ب وظايف تردقيق فيرتعامکان الزامات دو يو ديدگاه نديسکها در تسهيل (( Disk Handler) مديريت چرا؟... )
ب:يمعا – 2 سازي بهينه شده يفضا مشکالت (Optimization )استفاده افزار نرم در رکوردها مديريت (مسئوليت چرا؟ ... )
2 -16File Structure Dr. M. Rahgozar
به يدسترس داده يلهايفا کاربران
(Access Methods)
از فايل يک هاي داده به پذير چه دسترسي امکان طرقي؟ميباشد
سري بطور رکورد عني)دسترسي به رکورد يا بايت به بايت ( ي(Sequential)
آدرس يک به مستقيم ( Direct )دسترسي چگونه؟( ... )
يک حافظه Arrayهمانند )RAM )Memory Mapped در
کليد يک حسب بر مستقيم (Indexed ) دسترسي
2 -17File Structure Dr. M. Rahgozar
ها داده همخواني و صحت(Data Consistency)
چ ها داده صحت از ست؟يمنظور د با ياز کاربران هاي که يستيدگاه در داده فا يموجود حت يل يک در يا
يکديگرهمخواني به نسبت مختلف (دنباشداشته فايلهاي مثال؟. )
فا س ينقش ستم؟يلستميس در UNIX يک هاي فايل کاربرداده در شدن نوشته محض به
ديگر کاربران فا ي)بوسيله به دسترس يکه اجازه ( يل قابل دارند باشد مي !(مشاهده خطر ... )
تا ها سيستم از ديگر برخي نوشته زماندر هاي داده ، فايل شدن بستهباشد نمي کاربران ديگر بوسيله مشاهده قابل آن در .شده
جه؟ينت مورد دو هر اول ب ( فوق در مورد خصوص کاربران )ه بين هماهنگي
دا صحت حفظ آنها دجهت همخواني و ها مورد ) ست.يالزام ه چرادوم؟(
2 -18File Structure Dr. M. Rahgozar
امن ها تيحفظ داده(Access Protection)
امن از چ يمنظور ها داده ست؟يت ها داده امنيت کاربران حفظ بوسيله آنها به دسترسي کنترل مفهوم به
باشد مي .مجاز
کنترل ميباشد؟ اين جهاتي چه از دسترسي خواندن ( Read) نوشتن ( Write) اجرا ( Execute) ها حذف (Delete ) داده ها داده نمودن (Append ) اضافه فايلها مشخصاتمشاهده ( File Attributes )لها يفا يجستجو( Files & Directory Search ) ( ... يا) چرا؟ ن
2 -19File Structure Dr. M. Rahgozar
امن ها تيحفظ داده(Access Protection)
روشها دارد؟ يبرا ييچه وجود امنيت کنترل ساده ليستهاي وسيله به فايلها امنيت کنترل روش طوالني )يک از (ولي
ميباشد پذير انجام دارند دسترسي آن به که فايلهايي و .کاربران (Access Lists)
درUnix تري ساده رود ( Access Groups ) روش مي شامل که بکارسه در کاربران باشد نوعتعريف :مي
فا- 1 لک ما (Ownerل ) يخود
فا- 2 لک ما با گروه هم ( Groupل )يکاربران
د- 3 ( Othersگر )يکاربران مثال؟ ( ... )
ا ) (يچرا است؟ تر ساده روش ن
2 -20File Structure Dr. M. Rahgozar
هاي به يدسترس فا ي داده ليک (Opening a File)
ها يدسترس داده فا ي يبه چگونه يک لم شود؟يآغاز
دسترس گونه هر از ها يقبل داده ک ي يبهبا يفا .يفا يستيل نمود باز اصطالحا را ل
نمودن فا يباز چه؟ يعنيل يک
نمودن فا يباز معن يک به نمودن يل واردفا به مربوط س ياطالعات جداول در ستم يل
باشد. يم
) کجا؟) از
P1
P2
P3
System OFT
2 -21File Structure Dr. M. Rahgozar
هاي به يدسترس فا ي داده ليک (Opening a Files)
نمودن فا يباز است؟ يک چگونه ل
فايلهايي مختلف که براي کاربران بوسيلهم جداول گردند،يباز در گوناگوني اطالعات
جمله از Open File Tableسيستمميشود .نگهداري
اطالعات) نوع ؟( يچه
P1
P2
P3
System OFT
2 -22File Structure Dr. M. Rahgozar
هاي به يدسترس فا ي داده ليک (Opening a Files)
اطالعات نوع چه س يبه جداول ستم يدرن م يمورد باشد؟ياز
عمومي :شامل اطالعات
ديسک روي فايل آدرس شده رزرو فضاي و دسترسي و ايجاد زمان بافرهايI/O شدن باز دفعاتLock ها غيره
هر به مربوط شامل: Processاطالعات
مختلف نشانگرهاي( Pointers ) ) مثال؟ ... )
دسترسي ي اجازه نوع(Access Permissions)
غيره
2 -23File Structure Dr. M. Rahgozar
هاي به يدسترس فا ي داده ليک (Opening a Files)
Open (filename)
Allocate and linkdata structures
File name lookup
Logical to physicalblock mapping
Pointer to buffer
Pointer to filedescriptor
Index to processOpen File table
File descriptor table
Open file table
Open file ptr
نمودن باز فا يمراحل چگونه يک لاست؟
2 -24File Structure Dr. M. Rahgozar
فايل ديسک هانگهداري روي(Disk Allocation)
ي نياز مورد ديسک کفضاي روي را ميتوان هاروش چهبا فايل مشخصيي؟نمود
1 -: اول روش ( مرتبط يکديگر به شده رزرو ديسک فضاي از مختلفي مي( Linkقطعات
(Linked Allocation. )شوند ولي داشت نخواهد وجود شده رزرو فضاي در محدوديتي روش اين در
بايت يا رکورد يک به مستقيم بود دسترسي نخواهد (ممکن چرا؟. )
2 -25File Structure Dr. M. Rahgozar
فايل ديسک هانگهداري روي(Disk Allocation)
ي نياز مورد ديسک کفضاي روي را ميتوان هاروش چهبا فايل يي؟نمود مشخص
2 -: دوم روش شده رزرو مختلف قطعات در موجود فضاي و فا ي يبرا آدرس در ليک
شوند Indexيک مي (Indexed Allocation )نگاهداري خواهد وجود بايت يا رکورد يک به مستقيم دسترسي امکان روش اين در
(داشت چرا؟. )
2 -26File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)
يونيکس سيستم تحت و فايلها نگهداري چه درچگونه و تعريف سطوحيشوند ؟مي
فا جداول يمشخصات چه در (I-nodes & Directoriesشوند؟ )يم ينگاهدار يلها
فا جداول يلهايمشخصات چه در (Open File Structureشوند؟ )يم ينگاهدار يبازشده
است؟ )يد يفضا يسازمانده چگونه (Disk Organizationسک
تحت فايلها م نگاهداري انجام صورت چه به (Network File Systemشود؟ )يشبکه
2 -27File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)ميشوند؟ نگاهداري جداولي چه در فايلها مشخصات
جداولDirectories جداولI-nodes
است؟ Directoryساختار چگونهشماره ساده فهرستي و فايلها اسامي باشد i-nodeاز مي .مربوطه
Smith
Jones
apple.c
file name i-node
an i-node
proj1.c
2 -28File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)
جدول يساختار است؟ I-nodeک چگونه
اصل در مشخصات فايل هر به مربوط مي I-nodeجدول کي ي نگهداريشوند.
ن ي فضا بلوکهاي ازيمورد بصورت ديسک بايتي 8روي .ميشوند رزروکيلو روش شود Indexed Allocationاز مي استفاده آنها به دهي آدرس .براي12 مستقيم گر به (direct pointer)اشاره مستقيم دسترسي داده امکان
تا يها آنها ظرفيت که را ميکنند 96فايلهايي فراهم باشد بايت .کيلو بعدي گر اشاره داده 16تا (Single indirect pointer)بوسيله بايت مگا
يک با فقط بود indexديگر، خواهد دسترسي قابل .اضافي گر اشاره با ، با 4تا Double indirect pointerسپس ، ديگر داده بايت گيگا
باشند مي دسترسي قابل ايندکس سطح .دو پروسسورهاي در ظرفيت اين تا 64و کند 32بيتي مي پيدا ارتقا بايت .گيگا
2 -29File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)
modeowners (2)
timestamps (3)size
block count
single indirectdouble indirecttriple indirect
direct blocks
data
data
lll
data
data
lll
lll
data
data
lll
data
data
data
data12
جدول يساختار است؟ I-nodeک چگونه
2 -30File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)فا جداول يلهايمشخصات چه در شوند؟يم ينگاهدار يبازشده
جدول File Descriptor Table و شده باز فايلهاي به مربوط اطالعاتيک در استفاده مورد . processنشانگرهاي کند مي مشخص را
( جدولOFT )Open File Table باز فايلهاي تمام به مربوط اطالعاتفايل هر بازشدن دفعات تعداد ، سيستم در قفل open countشده ،
فايل ) هر به مربوط را( Locksهاي غيره و ها داده صحت و امنيت کنترلکند مي .مشخص
جدولFile Allocation Table به مربوط ها فايل داده يبلوکهااطالعاتنگاهدار .يم يرا کند
جدولTable of I-nodes از کپي مورد I-nodesيک فايلهاي هايحافظه رااستفاده مي RAMدر .دکننگهداري
2 -31File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)
user space
FileDescriptor
Table
disk
datablocks
i-nodes
Open FileTable
r/w
File AllocationTable
Table ofI-nodes
kernel space
swappable
resident
فا جداول يلهايمشخصات چه در ينگاهدار يبازشدهشوند؟يم
2 -32File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)
است؟ )يد يفضا يسازمانده چگونه DiskسکOrganization)
چند شامل تواند مي ديسک واحد .باشد File Systemهر
يک روي سيستم فايل و Logical Diskهر شده تعريفيک تعدادي boot blockشامل .ميباشد Cylinder groupو
يک بلوک نام Logical Diskاولين ميباشد boot blockبهحاوي .ميباشد boot strap programکه
بقيهlogical disk چندين تقسيم Cylinder groupبه.ميشود
هرCylinder group تعدادي مجاور Cylinderشاملميباشد يکديگر
data blocks
i-nodes
cylinder block
Super block
data blocks
2 -33File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)
است؟ )يد يفضا يسازمانده چگونه (Disk Organizationسک
هر حاوي Super blockيک Cylinder groupدر که دارد قرارثابت .ميباشد File Systemاطالعات
هر حاوي cylinder blockيک Cylinder groupدر که دارد قرارآزاد بلوکهاي به مربوط متغير آزاد i-node، (free ) اطالعات هاي
غيره و شده اشغال فضاي درصد مثل آماري اطالعات نيز و.ميباشد
هرCylinder group براي شده رزرو فضاي يک ها i-nodeشامل.ميباشد
در موجود فضاي داده cylinder groupبقيه بلوکهاي data)برايblocks) ميشود .رزرو
data blocks
i-nodes
cylinder block
Super block
data blocks
2 -34File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)است؟ )يد يفضا يسازمانده چگونه (Disk Organizationسک
ميباشد داده بلوک تعدادي شامل فايل هر نگهداري براي الزم .فضاي
روي دهي آدرس قابل هاي بخش از ثابتي و مشخص تعداد عنوان به داده بلوک هرميشود Sector)بنام(ديسک .تعريف
حافظه از را داده انتقال راندمان بزرگتر بهتر RAMبلوکهاي بالعکس و ديسک به.مينمايند
ديسک فضاي از بخشي رفتن هدر به و ماندن استفاده بي از کوچکتر بلوکهايميکنند .جلوگيري
يا قطعه تعدادي بصورت بلوک هر در مفيد ميشود Sectorفضاي رزرو کاربر .بوسيله
هاي اندازه صحيح تعريف به بسته ديسک فضاي از بهينه و Blockاستفاده هاSector: . ¤ معموال دارد ها
اندازهBlock بين بايت 8تا 4ها باشد.يم کيلو اندازهSector بين بايت 2تا 0.5ها باشد.يمکيلو
2 -35File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت لهاکس يوني
(Unix File System)است؟ )يد يفضا يسازمانده چگونه (Disk Organizationسک
تعريفCylinder Group يونيک نسخه هدف BSD 4.2 ساز با ، بعد بهاست يافته انجام مشخصي محدوده يک در فايل يک هاي داده .گردآوري
جدولI-node فايل آن )هر اوليه هاي داده االمکان حتي همان (و درcylinder group به ميشوند Directoryمربوط .حفظ
هرSub-directory يک ميشود cylinder groupبه منتقل .ديگر
يک فضاي کردن مونوپوليزه از جلوگيري يک cylinder groupبراي بوسيلهبزرگ مستقيم )،فايل غير داده هر( indirect blocksبلوکهاي به مربوط
يک به ميشوند cylinder groupفايل منتقل .ديگر
2 -36File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت کس يونيلها (Unix File System)
ميشود؟ انجام صورت چه به شبکه تحت فايلها نگاهداري(Network File System)
شرکت بار اولين باز SUNبراي هاي سيستم و (open systems)تعريفمربوطه هاي نمود (NFS , XDR , RPC)پروتوکل ارائه .را
NFS استاندارد يک هاي به سيستم است heterogeneousبراي شده .تبديل
NFS مدل باعث Client /Serverاز و نمايد مي استفاده ها سيستم تعريف دردر اساسي است Unixتحوالت .شده
عنوان به ميتواند سيستم به Serverهر را خود فايلهاي به دسترسي امکانديگري .بدهد (Client) سيستم
2 -37File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت کس يونيلها (Unix File System)
ميشود؟ انجام صورت چه به شبکه تحت فايلها نگاهداري(Network File System)
:مثالserver
/lib /usr /usr2
/bin /lib
docserv
/usr
/bin
/lib
/man
/lib /usr2
client
/x /pub /usr
/bin /lib /man
2 -38File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت کس يونيلها (Unix File System)
ميشود؟ انجام صورت چه به شبکه تحت فايلها Network ) نگاهداريFile System)
سيستمClient( آوردن باال درخواست يک( mountميتواند سطح در راDirectory تمام سيستم Sub-directoryو به ، مربوطه .بدهد Serverهاي
شرکت ، تحول اين انجام و VFS( Virtual File Systems)تعريف SUNبرايبا i-nodeجايگزيني نمود V-nodeرا .پيشنهاد
V-node طور به فايلها گذاري شماره سطح Uniqueامکان را Networkدرسازد مي .فراهم
2 -39File Structure Dr. M. Rahgozar
سيستم يفا ينگاهدار تحت کس يونيلها (Unix File System)
ميشود؟ انجام صورت چه به شبکه تحت فايلها Network ) نگاهداريFile System)
system call interface
VFS interface
other filesystems
Unix filesystems
NFSclient
rpc/xdr rpc/xdr
network
NFSserver
VFS interface
Unix filesystems
disk disk