تاریخچه ی:
سطوح نشانی دهی
||V{maketoc}||
^@#16:
!سطوح نشانی دهی
{*همانطور که نشانی دهی به " ((داده)) مورد نظر "در حافظه اصلی سطوحی وجود دارد ، و بسته به اینکه در چه سطحی از برنامه سازی باشیم ،نحوه نشانی دهی فرق میکند ،در مورد فایلها نیز این معنا صادق است ،زیرا آنچه در ((فایل)) نشانی دهی میشود ، "دادههای مورد نظر " است که در جایی از حافظه خارجی ذخیره شده است و نحوه نشانی دهی به آن، بستگی دارد به سطح برخورد با محیط ذخیره سازی خارجی ، پس ابتدا ببینیم سطوح مختلف برخورد با فایل کدامند
به طور کلی (صرفنظر از جزییات بحث که اساسا به مقولات سیستم عامل مربوط میشود) میتوان این سطوح را به صورت زیر نمایش داد:
برنامه فایل پرداز ، به کمک احکامی از یک ((زبان برنام سازی)) و از طریق "سیستم فایل منطقی یا مجازی، نهایتا" به محیط فیزیکی ذخیره سازی دستیابی دارد و پردازش مورد نظرش را انجام میدهد .هر سیستمی فایل ، یک یا بیش از یک شیوه دستیابی به داده دارد
سیستم فایل، لایههای درونی خاص خود را دارد، ولی میتوان گفت که از دو بخش عمده تشکیل شده است . *}
*سیستم فایل منطقی
*سیستم فایل فیزیکی
{*وظیفه سیستم فایل منطقی این است که در خواست های برنامه کاربرد را دریافت کرده ، آنرا انجام دهد این درخواست ها به طور کلی عبارتند از : باز کردن فایل ، خواندن فایل ،نوشتن فایل ، بستن فایل
وظیفه سیستم فایل فیزیکی ، دستیابی فیزیکی به فایلها در محیط فیزیکی است ، و برای این منظور باید در خواست های دریافتی از بخش منطقی را تبدیل کند به فرامینی جهت صدور به کنترولر رسانه این فرامین با توجه به نوع رسانه ، متفاوتند، ولی به طور کلی سه عمل اساسی در محیط فیزیکی انجام میشود که عبارتند از : پیگرد که لازمه اش داشتن آدرس است ، خواندن از رسانه و نوشتن بر رسانه ، این عملیات باید به طور فیزیک صورت بگیرند یعنی یافتن مکان ذخیره شدن "داده مورد نظر " روی رسانه ، انتقالی از ((رسانه)) به محیط درونی ماشین و انتقال از محیط درونی ماشین به رسانه
پس به طور کلی و سه سطح برخورد با فایل وجود دارد:*}
*سطح برنامه کاربر
*سطح سیستم فایل منطقی
*سطح سیستم فایل فیزیکی
بنابراین سطح نشانی دهی نیز وجود دارد:
*نشانی دهی در سطح برنامه فایل پرداز
*نشانی دهی در سطح سیستم فایل منطقی
*نشانی دهی در سطح سیستم فایل فیزیکی
---
!!سطوح مختلف نشانی دهی
نشانی دهی در سطح برنامه ((پردازشگر))
معمولا در این سطح به یکی از گونههای زیر به فایل نشانی دهی میشود:
*نشانی دهی محتوایی (مقداری)
*نشانی دهی نسبی
*نشانی دهی نمادی
{*در نشانی دهی محتوایی ، کاربرد مقدار یک (و گاه بیش از یک ) صفت خاصه را به عنوان نشانوند جستجو میدهد . این صفت خاصه ممکن است کلید باشد و یا نباشد و در واقع کاربرد ، محتوای یک (و گاه بیشت از یک ) ((فیلد)) را به سیستم میدهد . در نشانی دهی نسبی ، کاربر آدرس نسبی رکورد را میدهد . به عبارت دیگر ، کاربرد محیط ذخیره سازی خود را یک ساختار خطی میبیند که در آن، هر رکورد شمارهای دارد و با شروع از یک برای اولین رکورد فایل.
در نشانی دهی نمایی ، کاربر ((رکورد)) مورد نظرش را به کمک یک نام مشخص میکند ،خود فایل نیز به کمک یک نام در برنامه مشخص و نشانی دهی میشود.*}
---
!!نشانی دهی در سطح سیستم فایل منطقی
{*در این بحث فرض بر این است که فایل در یک فضای پیوسته ذخیره میشد در غیر اینصورت سیستم فایل از روشهای دیگر استفاده میکند.
در این سطح ، برای نشانی دهی به فایل اساسا از نشانی دهی نسبی استفاده میشود. ولی این آدرس نسبی با آدرس نسبی از دید کاربر(که در محدوده یک فایل مشخص صورت میپذیرد )متفاوت است . این آدرس نسبی که در سطح سیستم فایل منطقی داده میشود، در کل فضای ذخیره سازی صورت میگیرد، به شرح زیر :
سیستم فایل منطقی ، کل فضای خیره سازی را به صورت آرایهای از بلاکها میبیند (و یا سکتورها)و از تعداد بلاکها نیز مطالعه است . هر بلاک شمارهای دارد با شروع از صفر برای اولین بلاک و این شماره اصطلاحا به آدرس نسبی بلاک مرسوم است.
سیستم فایل منطقی، با داشتن تعداد نوع و ظرفیت هر یک از رسانههای محیط فیزیکی ،طیف مقادیر RBA را برای هر رسانه و نیز کل فضای ذخیره سازی مشخص میکند.
فرض میکنیم که دو ((دیسک)) A و B داریم سیستم فایل منطقی باید، آدرس داده شده توسط برنامه را به آدرس نسبی بلاک حاوی رکورد تبدیل کند اگر آدرس در برنامه ، نمادی برای تبدیل از یک جدول خاص استفاده میکند . این جدول شبیه جدول اسامی نمادی است که اسمبلرها به کار میبرند.
اگر آدرس داده شده در برنامه، آدرس نسبی رکورد باشد( که در محدوده یک فایل مشخص است) بخش منطقی باید آنرا RBA تبدیل کند . برای این منظور به اطلاعاتی از قبیل شماره رکورد ، اندازه رکورد ، اندازه بلاک و آدرس شروع فایل نیاز دارد.*}
---
!!نشانی دهی در سطح سیستم فایل فیزیکی
{*در این سطح باید آدرس فیزیکی داده شود، یعنی آدرسی که مکان داده مورد نظر را در ((محیط فیزیکی)) ذخیره سازی (روی رسانه)مشخص کند. دیدیم که در حالتی که رسانه ، دیسک است . این آدرس از اجزاء زیر تشکیل میشود.*}
*شماره درایور
*شماره استوانه
*شماره رویه (شیاره از استوانه)
*شماره سکتور از شیار( یا شماره بلاک)
{*روشن است که مکان یابی و دستیابی فیزیکی به داده مورد نظر در حافظه خارجی باید با استفاده از همین آدرس فیزیکی صورت پذیرد . لذا ((سیستم)) فایل فیزیکی باید RBA را به آدرس فیزیکی تبدیل کند.*}
---
!همچنین ببینید
*((سیستم فایل از دیدگاه ذخیره و بازیابی اطلاعات))
#@^