آهان !!
این لینکو ببین به دردت می خوره ؟
http://forum.mydownload.ir/showthread.php?t=1102
ممنون آقا مهدی
از آنجا که فروم یک مکان عمومی است من باذکر منبع مطالب رو اینجا قرار میدم
تاسایرین مجبور نشن بی جهت عضو این فروم و آن فروم بشوند.
---------
آشنائی با ramdisk :
در این مقاله ابتدا سعی میكنم شما را با مفاهیم اولیه ramdisk یا درایو مجازی آشنا كنم .
ابتدا باید بدانیم كه ramdisk قسمتی از حافظه ram* سیستم است كه شما آنرا بصورتی آدرس دهی میكنید كه مجازا" بصورت یك پارتیشن هارد دیسك عمل كند . به عبارت دیگر شما قسمتی از حافظه رم سیستم خودرا كه دارای سرعتی چندین برابر بیشتر از هارد دیسك شماست در اختیار میگیرید و به سیستم میگوئید كه اینگونه وانمود كند كه این بخش یك پارتیشن اضافی در كنار هارد دیسك شماست و از آن درست مثل هارد دیسك ولی با توان و سرعت بسیار بالاتر استفاده كند .
توجه داشته باشید كه ramdisk همانطوریكه از نام آن پیداست در قسمتی از حافظه ram ایجاد شده و به محض راه اندازی مجدد یا خاموش كردن كامپیوتر اطلاعات آن بكلی پاك میشود و نباید از آن برای ذخیره كردن اطلاعات دائمی مثل اسناد متنی یا فایلهای پیكربندی سیستم ویا برنامه های كاربردی استفاده كرد.
سئوالی كه اینجا مطرح میشود این است كه با این اوصاف پس مورد استفاده ramdisk چیست و چرا باید از آن به نحو شایسته استفاده كرد .
پاسخ این است كه در برخی برنامه های كاربردی مثل مرورگرها یا سرورهای وب و حتی خود سیستمهای عامل همیشه قسمتی از اطلاعات موقتی برنامه ها به اصطلاح cache یا موقتا ذخیره میشوند و سرعت ذخیره و بازیابی این اطلاعات در سرعت و كارائی برنامه كاربردی بسیار موثر است . و اینجاست كه با مسیر دهی محل ذخیره سازی این فایلهای موقت در محل ایجاد شده تحت عنوان ramdisk* و بهره گیری از سرعت بسیار بالا و توان عملیاتی ram میتوان به كارائی مطلوب سیستمی دست یافت .
در برخی موارد در صورت استفاده صحیح از ramdisk* ارتقاء كارائی سیستم به حدی چشمگیر خواهد بود كه درست مثل یك ارتقاء سخت افزاری گران قیمت و البته در اینجا بدون هیچ هزینه جانبی ما را به performance مطلوب و مورد نظرمان نزدیك میكند .
● ایجاد ramdisk در لینوكس :
معمولا هسته كرنل همه توزیعهای لینوكس موجود از ramdisk بصورت پیش گزیده built-in* پشتیبانی میكنند و ایجاد ramdisk در این شرایط بسیار ساده و به شرح زیر میباشد :
ابتدا یك دایركتوری یا mount point به نام ramdisk۰ برای استقرا ramdisk * در مسیر /tmp ایجاد میكنیم :
▪
mkdir /tmp/ramdisk۰
سپس یك فایل سیستم فرمت ext۲ با نام ram۰* در مسیر /dev ایجاد میكنیم :
▪
mke۲fs /dev/ram۰
در ادامه باید فایل سیستم ایجاد شده را در مسیر mount point ایجاد شده الصاق یا به اصطلاح mount كنیم :
▪
mount /dev/ram۰ /tmp/ramdisk۰
این دستورات فایل سیستم مناسب را بر روی قسمتی از فضای ram برای شما ایجاد و آنرا فرمت كرده و در درایوی با نام ramdisk۰* برای استفاده شما محیا میكند .
حال میتوانید از دایركتوری /tmp/ramdisk۰ درست مثل یك پارتیشن هارد دیسك استفاده كنید .
اندازه ramdisk* بطور پیش فرض ۴ مگابایت تعریف میشود ولی در صورتی كه بخواهید اندازه آنرا به دلخواه تعیین كنید بایستی دستور زیر را به فایل تنظیمات بوت لودر LILO با نام /etc/boot/lilo.conf اضافه كنید :
ramdisk_size=۱۰۰۰۰
احتمالا قسمتی از فایل lilo.conf* شما پس از افزودن دستور فوق به شكل زیر خواهد بود :
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=۵۰
image=/boot/vmlinuz
label=linux
root=/dev/hda۲
read-only
ramdisk_size=۱۰۰۰۰
پس از افزودن این دستور به فایل lilo.conf وذخیره سازی و سپس اجرای دستور lilo در خط فرمان جهت اعمال تغییرات اندازه ramdisk شما به ده مگابایت ارتقاء می یابد .
بدیهی است در صورتی كه شما هسته kernel خود را خودتان كامپایل نموده و ramdisk* را بعنوان loadable module یا همان ماژول قابل اتصال به هسته پیكربندی كرده اید باید برای افزایش فضای ramdisk* دستور زیر را در فایل modules.conf واقع در مسیر /etc/ اضافه كنید :
options rd rd_size=۱۰۰۰۰
و یا دستور زیر را در خط فرمان كاربر ریشه اجرا كنید :
insmod rd rd_size=۱۰۰۰۰
▪ نكته : در هر زمان با اجرای دستور زیر میتوان به مشخصات تفصیلی ramdisk* دست یافت :
df -k /dev/ram
۰
نتایج بدست آمده برای یك ramdisk * با اندازه ۴ مگابایت :
>df -k /dev/ram۰
Filesystem ۱k-blocks Used Available Used Mounted on
/dev/ram۰ ۳۹۶۳ ۱۳ ۳۷۴۶ ۰% /tmp/ramdisk۰