بررسی فایل و سیستم فایل بخش دوم
بررسی فایل و سیستم فایل بخش دوم
دپارتمان آموزش کامپیوتر – کیش تک؛
صفات فایل
نام: براي فايل نامي انتخاب ميشود تا كاربران بتوانند به آن مراجعه كنند. نام فايل رشتهاي از كاراكترهاست مانند TEST.txt
شناسه: نامي است كه توسط سيستم فايل قابل تشخيص است كه گاه ميتواند عددي باشد.
مكان فايل: به دستگاه يا محلي اشاره ميكند كه فايل در آنجا ذخيره شده است.
اندازه فايل: اندازه فعلي فايل بر حسب بايت،كلمه يا بلوك
حفاظت: اطلاعاتي كه دستيابي به فايل را كنترل ميكند.
زمان، تاريخ: اين اطلاعات براي كنترل بيشتر برروي فايل به كار برده ميشود.
- اطلاعات مربوط به فايلها در دايركتوري نگهداري ميشوند كه اين ساختار نيز در حافظه جانبي قرار دارد.
- ورودي دايركتوريها شامل نام فايل و شناسه يكتاي آن است.
- شناسه فايل، مكان صفات ديگر فايل را مشخص ميكند.
عملیات فایل
فايل يك نوع داده انتزاعي (Abstract Data Type) است.
هر سيستم فايل نه تنها بايد شامل ابزاري براي ذخيره سازي دادهها به صورت يك فايل باشد بلكه بايد مجموعه عمليات قابل اجرا بر روي يك فايل را نيز شامل شود.
عمليات متداول بر روي سيستم فايل عبارتند از:
- ايجاد فايل كه در دو مرحله صورت ميگيرد؛ ابتدا در سيستم فايل فضايي پيدا ميشود و در مرحله دوم، يك ورودي براي فايل در دايركتوري ايجاد ميشود.
- حذف فايل: پس از يافتن فايل فضاي اختصاص شده به آن آزاد شده و از دايركتوري حذف ميشود.
- بازكردن فايل: براي انجام عملياتي مانند خواندن و نوشتن بر روي يك فايل ابتدا بايد آنرا باز نمود.
- بستن فايل: يك فايل زماني بسته است كه هيچ فرآيندي نتواند عملياتي روي آن انجام دهد.
- نوشتن در فايل: فرآيندهاي مختلف ميتوانند با اضافه كردن دادههاي جديد فايل را به روز رساني كنند.
سیستم های مدیریت فایل
سيستم مديريت فايل نرمافزاري است كه خدماتي را براي كاربران و برنامههاي كاربردي در استفاه از فايل فراهم ميكند.
بدين ترتيب كاربر يا برنامهنويس مجبور به نوشتن نرمافزاري ويژه براي هر برنامه كاربردي نميباشد.
گسترش خواسته و نيازمنديهاي كاربر به تنوع برنامه كاربري و محيطي كه كامپيوتر در آن استفاده ميشود بستگي دارد.
در سيستمهاي محاوره اي و همه منظوره حداقل اين نيازها عبارتند از:
- هر كاربر بايد قادر به ايجاد، حذف، خواندن، يا تغيير فايل ها باشد.
- هر كاربر ممكن است دستيابي كنترل شده اي به فايل هاي كاربران ديگر داشته باشد.
- هر كاربر ممكن است كنترل كند چه نوع دستيابي هايي مجاز است در فايلهاي كاربر صورت گيرد.
- هر كاربر بايد قادر به تغيير ساختار فايل متناسب به مسئله باشد.
- هر كاربر بايد قادر به انتقال داده ها بين فايل ها باشد.
- هر كاربر بايد در هنگام خرابي قادر به تهيه پشتيبان و ترميم داده ها باشد.
- هر كاربر بايد از طريق نام هاي نمادي بتواند به فايل هاي كاربر دستيابي داشته باشد.
- يك روش درك حوزه مديريت فايل، نگاهي به سازمان يك نرم افزار است كه در شكل زير آمده است.
- سطح گردانندههاي دستگاه مستقيماً با دستگاه هاي جانبي يا كنترل كنندههاي آنها يا كانالها ارتباط برقرار مي كنند.
- سطح بعدي، سيستم فايل اصلي يا I/Oفيزيكي نام دارد.اين سطح، واسط اصلي با دنياي خارج سيستم كامپيوتري است.
- سرپرست I/O اصلي، مسئول تمام عمليات آغازين و پاياني I/O فايل است.
- I/O منطقي،كاربران و برنامههاي كاربردي را قادر به دستيابي به ركوردها مي كند. لذا، برعكس سيستم فايل اصلي كه با بلوكهايي از داده ها سرو كار دارد، مولفه I/Oمنطقي با ركوردهاي فايل سروكار دارد.
- نزديك ترين سطح سيستم فايل به كاربر، روش دستيابي نام دارد كه روشهاي دستيابي مختلف، ساختارهاي گوناگون فايل و روشهاي مختلف دستيابي و پردازش اطلاعات را ارائه ميكند.
وظايف مديريت فايل
در اين شكل، بين آن چه كه به سيستم مديريت فايل به عنوان يك برنامه سودمند سيستم مرتبط است، و آن چه كه به سيستم عامل مربوط مي شود، تمايز قائل ميگردد. اشتراك آن ها پردازش ركورد ها است.
جهت ثبت نام در دوره های کامپیوتر ما اینجا کلیک کنید.
دايركتوريهاي فايل
- در كنار هر سيستم مديريت فايل و مجموعهاي از فايلها يك دايركتوري فايل وجود دارد.
- دايركتوري حاوي اطلاعاتي راجع به فايل ها، از جمله صفات، محل، و مالكيت است.
- اغلب اين اطلاعات توسط سيستمعامل مديريت ميشود.
- درواقع دايركتوري يك فايل است كه در مالكيت سيستمعامل قرار دارد و روالهاي مديريت فايل ميتوانند به آن دسترسي داشته باشند.
اگرچه بعضي از اطلاعات موجود در دايركتوري در اختيار كاربران و برنامههاي كاربردي است اما اين اطلاعات به صورت غيرمستقيم فراهم شدهاند و كاربران درهيچ صورتي به صورت مستقيم به دايركتوري دسترسي ندارند.
جدول زير اطلاعاتي كه معمولا براي يك فايل ذخيره ميشود را نشان ميدهد:
ساختار دايركتوري
- روش ذخيره اطلاعات جدول قبل در سيستمهاي مختلف بايكديگر متفاوت ميباشد.
- بعضي ازاطلاعات ممكن است در ركورد سرآيند (Header record)فايل ذخيره شوند.
- به اين ترتيب، ميزان حافظه مورد نياز براي دايركتوري كاهش مييابد و براي بهبود سرعت ميتوان تمام دايركتوريها را در حافظه اصلي نگهداري كرد.
- بعضي ازعناصر كليدي مثل نام، آدرس، اندازه و سازمان فايل حتما بايد در حافظه اصلي ذخيره شود.
- اين ساختار سادهي دايركتوري، ليستي از واردهها است كه هر وارده مربوط به يك فايل است.
- اين ساختار را ميتوان با فايل ترتيبي ساده نمايش داد، به طوريكه نام فايل به عنوان كليد عمل مي كند.
عمليات ممكن در دايركتوري
-
انواع عملياتي كه ممكن است در دايركتوري انجام شود شامل موارد زير ميباشد:
- جستجو: وقتي كاربر يا برنامه كاربردي به فايل مراجعه ميكند، دايركتوري بايد براي يافتن واردهي (Entry) متناظر با آن فايل، جستجو شود.
- ايجاد فايل: وقتي فايل جديدي ايجاد ميشود، واردهاي بايد در دايركتوري قرار گيرد.
- حذف فايل: وقتي فايلي حذف ميشود، واردهاي بايد از دايركتوري حذف شود.
- ليست دايركتوري: چنانچه كاربر درخواست تمام يا بخشي از فايل را صادر كند، ليستي از فايلهاي تحت مالكيت آن كاربر به همراه بعضي صفات( مانند نوع، اطلاعات كنترل دستيابي، اطلاعات استفاده از فايل) نمايش داده ميشوند.
- به هنگامسازي دايركتوري: از آنجايي كه برخي صفات فايل در دايركتوري ذخيره ميشوند، تغيير در يكي از اين صفات، نياز به تغيير در دايركتوري دارد.
يك ليست ساده براي پشتيباني از اين عمليات مناسب نيست.
روش ذخيره دايركتوري
- ممكن است كاربر فايلهايي از انواع مختلف داشته باشد و بخواهد آنها را به طرق مختلف سازماندهي كند.
- اگر دايركتوري يك ليست ترتيبي ساده باشد به سازماندهي فايلها كمك نميكند و كاربر ملزم به عدم استفاده از فايلهاي همنام از يك نوع است.( اين مشكل در فايلهاي اشتراكي جديتر است)
- همچنين چنانچه ساختار ارثي در دايركتوري وجود نداشته باشد، پنهان كردن بخشي از دايركتوري از كاربران دشوارتر خواهد شد.
- شروع حل مشكلات دايركتوري هاي ليستي را با طرح دو سطحي آغاز ميكنيم.
- در اين حالت يك دايركتوري اصلي و براي هر كاربر نيز يك دايركتوري وجود دارد.
- براي هر دايركتوري كاربر، واردهاي در دايركتوري اصلي وجود دارد كه آدرس و اطلاعات كنترل دستيابي را ارائه ميكند.
- هر دايركتوري كاربر، ليست سادهاي از فايلهاي آن كاربر است.
- معناي اين ساختار اين است كه اسامي فقط بايد در داخل مجموعهاي از فايلهاي يك كاربر، منحصربفرد باشد و سيستم فايل به آساني ميتواند محدوديتهاي دستيابي را به دايركتوريها اعمال كند. اما در سازماندهي مجموعهاي از فايلها به كاربر كمكي نميكند.
- يك روش قدرتمندتر و با قابليت انعطاف بيشتر كه تقريباً مورد قبول همه است، روش سلسله مراتبي يا ساختار درختي است.
- همانند قبل يك دايركتوري اصلي وجود دارد كه چند دايركتوري كاربر در زير آن واقع است كه هريك ميتوانند داراي دايركتوري فرعي (subdirectory) نيز باشند.
- اين موضوع در هر سطح صادق است. يعني در هر سطح دايركتوري ممكن است حاوي واردههايي براي فايل يا دايركتوري ديگري باشد.