دیسک های مغناطیسی
برای ذخیره ی داده در دیسک های مغناطیسی، نقاط سطح دیسک به گونه ای مغناطیس می شوند که برخی نقاط نشان دهنده ی 1و برخی نشان دهنده ی 0باشند. در زمان خواندن داده از دیسک، میدان مغناطیسی حاصل از نقاط مغناطیس شده باعث القاء پالس های الکتریکی در سیم پیچ هد می شود که برای پردازنده ارسال می شوند. برای نوشتن یا ذخیره داده ها در دیسک، پالس های الکتریکی ارسال شده از طرف پردازنده باعث ایجاد میدان های مغناطیسی در هد می شوند که نقاط مختلف سطح دیسک را مغناطیس می کند.
سازمان دهی داده ها در دیسک مغناطیسی
در هر طرف یک دیسک مغناطیسی دوایر متحدالمرکزی وجود دارد که به آنها شیار گفته می شود. داده ها در یک دیسک، روی شیارهای آن ذخیره می شوند و هر چقدر فاصله شیارها از یک دیگر کم تر و تعداد آن ها بیش تر باشد، ظرفیت دیسک بیش تر است. هر شیار به تعداد مساوی از قطاع ها تقسیم شده است و ظرفیت هر قطاع 512بایت است
سرعت چرخش دیسک های مغناطیسی ثابت است و در نتیجه شیارهایی که نزدیک محیط دیسک هستند سریع تر از شیار هایی که نزدیک مرکز دیسک هستند حرکت می کنند. به عبارت دیگر قطاع هایی که روی شیارهای بیرونی قرار دارند سریع تر از زیر هد رد می شوند و باید از نظر فیزیکی طویل تر باشند تا داده از تمام قطاع ها با یک سرعت ثابت خوانده شود. این امر باعث به هدر رفتن مقدار زیادی از فضای دیسک در شیارهای بیرونی می شود. ولی سرعت خواندن داده از دیسک را افزایش می دهد.
قالب بندی دیسک ها
قبل از آنکه بتوان از یک دیسک استفاده نمود باید آن را قالب بندی نمود. این کار برای سازمان دهی و یافتن پرونده هایی که روی یک دیسک ذخیره شده اند ضروری است. در فرآیند قالب بندی سطح دیسک به وسیله ی علامت گذاری (با استفاده از توالی خاصی از صفرها و یک ها) به شیارها و قطاع ها تقسیم می شود. از مجموع دو یا چند قطاع که روی یک شیار قرار دارند یک Clusterایجاد می شود. اندازه clusterدر یک دیسک بستگی به ظرفیت دیسک و سیستم عاملی دارد که برای قالب بندی دیسک به کار رفته است. یک clusterدر واقع کوچک ترین واحد یک دیسک است که سیستم عامل می تواند آدرس دهی کند. پس حداقل فضایی که به ذخیره ی یک پرونده اختصاص می یابد یک clusterاست.
در قالب بندی دیسک یک پرونده با نام FAT یا جدول تخصیص پرونده ها در قطاع صفر دیسک ایجاد می شود. این پرونده شامل اطلاعاتی است از قبیل ساختار فهرست دیسک و شماره ی Custer هایی که برای ذخیره هر پرونده به کار رفته و آدرس شروع هر پرونده در دیسک. ساختار FAT در سیستم عامل های مختلف متفاوت است. برای مثال در سیستم عامل DOS از FAT16 (16 بیت و در سیستم عامل ویندوز عمدتاً از FAT32 (32 بیت استفاده می کنند. در FAT16، پرونده ها به صورت 16 بیتی و در FAT32 به صورت 32 بیتی خوانده می شوند. در نتیجه FAT32 سریع تر است. در FAT16، اسامی پرونده ها می توانند حداکثر 11 حرف باشند در حالی که در FAT32، 255حرف قابل قبول است. در FAT16 حداکثر ظرفیت قابل قالب بندی (اندازه ی هر پارتیشن) 2 گیگابایت است و اندازه ی هر Custer 32 کیلو بایت خواهد شد در حالی که FAT32 چنین محدودیتی را ندارد و در هر پارتیشن تا ظرفیت 8 گیگابایت اندازه ی هر CLUSTER تنها 4 کیلوبایت خواهد شد در حالی که FAT32 چنین محدودیتی را ندارد و در هر پارتیشن تا ظرفیت 8 گیگابایت اندازه ی هر clusterتنها 4 کیلو بایت است.
ذخیره ی داده در دیسک
زمانی که در در حال کار با یک برنامه کاربردی مانند word هستید و می خواهید پرونده ای را که ایجاد نموده اید، ذخیره کنید، از طریق برنامه کاربردی دستور ذخیره را صادر می کنید در این حالت برنامه ی کاربردی دستور ذخیره کردن را به سیستم عامل می دهد تا پرونده ای را که در حافظه ی اصلی و موقتی قرار دارد در نقطه ای از حافظه ی جانبی و دائمی (مثلاً دیسک سخت) ذخیره نماید. سیستم عامل با استفاده از آدرس ذکر شده توسط کاربر، جدول FAT دیسک مورد نظر را بررسی می نماید تا CLUSTERهایی را که باید به ذخیره پرونده مورد نظر اختصاص یابند را تعیین نماید. در انجام این کار این سیستم عامل هم چنین تنها از Cluster هایی که آزاد هستند و به وسیله ی پرونده های دیگر مورد استفاده قرار نگرفته اند، استفاده می نماید.
سیستم عامل هم چنین قطاع هایی که تشکیل clusterهای مورد نظر را می دهند مشخص نموده و با ارسال این اطلاعات به BIOS، ادامه کار را به آن واگذار می کند.BIOS هم زمان با ارسال اطلاعات بخشی از حافظه RAM که تشکیل پرونده مورد نظر را می دهند به دیسک، دستورالعمل های لازم را برای کنترل کننده دیسک ارسال می نماید تا داده ی ارسالی در قطاع هایی که توسط BIOSمشخص می شوند، ذخیره گردند. عمل انتقال داده از حافظه RAM به دیسک تا زمانی که سیستم عامل به کدی که نشان دهنده ی انتهای پرونده است نرسیده، ادامه می یابد. Cluster های به کار رفته برای ذخیره ی یک پرونده ضرورتاً مجاور یکدیگر نیستند و در جدول FAT به عنوان Clusterهای پر شده علامت می خورند.
خواندن از دیسک
زمانی که در محیط یک برنامه ی کاربردی مانند word می خواهید یک پرونده را باز کنید، دستور مذکور به همراه نام پرونده مورد نظر به سیستم عامل داده می شود، سیستم عامل جدول FAT دیسک ذکر شده در مسیر پرونده فوق را بررسی می نماید تا از وجود پرونده خواسته شده مطمئن شود. چنان چه سیستم عامل نتواند اثری از پرونده خواسته شده در جدول FAT پیدا کند، پیغام خطایی مبتنی بر این که نمی تواند پرونده خواسته شده را بیابد، نمایش می دهد. در صورت یافتن پرونده در مسیر ذکر شده، سیستم عامل آدرس CLUSTERهایی که برای ذخیره ی پرونده ی فوق مورد استفاده قرار گرفته اند را از جدول FAT استخراج و برای BIOS ارسال می کند. BIOS نیز به سهم خود دستورات لازم را برای کنترل کننده ی دیسک ارسال می کند تا با انتقال هد به محل CLUSTERها و با توالی صحیح (از اولین CLUSTER شروع می کند و به ترتیب آخرین CLUSTERپیش می رود) اطلاعات مربوط به پرونده را بخواند. اطلاعات خوانده شده از طریق BIOS به حافظه ی RAM انتقال می یابد.
افزایش سرعت خواندن و نوشتن در یک دیسک
وقتی یک دیسک قالب بندی می شود تمام اطلاعات روی آن پاک می شود و دیسک آماده ذخیره داده می شود. با ذخیره پرونده ها روی دیسک قالب بندی شده، Clusterهای متوالی برای ذخیره هر پرونده به کار می رود و در نتیجه در زمان خواندن پرونده ها، هد دستگاه به طور یکنواخت و مستقیم از یک Clusterبه Clusterبعدی می رود. چنان چه پرونده های ذخیره شده را با رنگ های مختلف نشان دهیم
با حذف برخی از پرونده ها Clusterهای خالی در بین پرونده ها ایجاد خواهند شد
حال اگر بخواهیم پرونده های جدیدی را روی دیسک ذخیره کنیم از فضاهای خالی ایجاد شده استفاده می شود و ممکن است اندازه ی یک پرونده به گونه ای باشد که چندین فضای خالی را پر کند. در این صورت پرونده ی مذکور در Clusterهایی ذخیره شده است که در نقاط مختلف دیسک قرار دارند و بنابراین برای خواندن ونوشتن نیاز به زمان بیش تری می باشد این زمان صرف حرکت هدها از یک شیار به شیار دیگر می شود.
برای رفع این مشکل و افزایش سرعت خواندن و نوشتن، از یک برنامه مفید با نام نرم افزار Defraggingاستفاده می شود که قطعات پرونده هایی که در نقاط مختلف و غیرمتوالی دیسک ذخیره شده اند را در کنار هم قرار می دهد. برای انجام این کار، نرم افزار فوق پرونده هایی را که پیوسته هستند و در Clusterهای متوالی ذخیره شده اند را به نقطه ی دیگر از دیسک انتقال می دهد و فضای خالی مناسبی برای جا به جایی پرونده ها ایجاد می کند. سپس تکه های جدا شده ی پرونده ها در فضای خالی ایجاد شده در کنار هم قرار می گیرند و به این صورت در Clusterهای متوالی قرار می گیرند بدیهی است برای استفاده از این نرم افزار باید فضای خالی کافی روی دیسک وجود داشته باشد.
برای دیفراگمنت کردن درایوها از نرم افزار های زیر هم می توانید استفاده نمایید.
Advanced Defrag 6 - ultradefrag-5.0.4 - Disk Defrag v1.5.23.435