چرا باید فلش مموری را Safe to Remove کنیم؟ اگر در کامپیوتر یک فلش مموری یا هارد اکسترنال را بدون Eject کردن از پورت USB بیرون بکشید، معمولا یک هشدار با این مضمون به نمایش درمیآید: Disk Not Ejected Properly که یعنی دیسک بهدرستی بیرون کشیده نشده است. اما آیا واقعا Eject کردن فلش مموری یک امر ضروری محسوب میشود؟
پاسخ احتمالا خیر است؛ فقط کافی است بعد از کپی کردن اطلاعات چند ثانیه صبر کنید و سپس فلش مموری موردنظر را بیرون بکشید. برای محکمکاری، بهتر است در مورد هاردهای اکسترنال، بهخصوص آنهایی که از قطعات چرخان استفاده میکنند، کمی محتاطانهتر عمل کنید و در مورد بیرون کشیدن سیم آن عجله نکنید.
البته این یک توصیه علمی نیست، ولی باید بگوییم که در بدترین حالت ممکن، فایل موردنظر بهدرستی منتقل نمیشود یا برای فایلهای موجود در حافظهی اکسترنال مشکلی پیش میآید.
«فرانک وانگ» (Frank Wang)، دانشجوی دکترای رشته علوم کامپیوتر در دانشگاه MIT، در این رابطه میگوید: «من در 5 سال گذشته، فلش مموریها را بدون Eject کردن از کامپیوتر بیرون میکشم و تا حالا به مشکلی برنخوردم» البته میدانیم که چنین موردی را نمیتوان به تمام کاربران تعمیم داد، اما میتوان گفت که در اکثر اوقات «انجام چنین کاری برای یک کاربر معمولی مشکلزا نخواهد بود.» با این حال، برای درک بهتر این موضوع، میتوانیم پشتصحنهی این ماجرا را بررسی کنیم.
مشکلات احتمالی
اول از همه به بخشی از پشتصحنهی مربوط به این ماجرا میپردازیم و در ادامه مشکلات احتمالی را بررسی میکنیم. فرض کنید در حال انتقال یک فایل از کامپیوتر به فلش مموری خود هستید. دستگاه شما برای انجام چنین کاری احتمالا از روشی به نام write cache بهره میبرد که در حقیقت یک حافظهی پنهان و میانی برای انجام چنین کارهایی است.
این یعنی به جای اینکه فایل مستقیما از حافظه داخلی سیستم به مقصد منتقل شود، برای بالا بردن راندمان، از حافظه پنهان بهره میگیرد. این حافظه پنهان بخشی از سیستم محسوب میشود که به این گجت اجازه میدهد چنین تبادلاتی را با سرعت بالاتری انجام دهد.
«اندی پاولو» (Andy Pavlo)، استاد علوم کامپیوتر در دانشگاه کارنگی ملون، در این رابطه میگوید: «زمانی که فایلی را به فلش مموری منتقل میکنیم، در حقیقت این فایل به حافظه موقت منتقل میشود و در ادامه پیامی برای انتقال موفقیتآمیز آن به فلش مموری نمایش داده میشود. اما در حقیقت تمام فایل موردنظر هنوز به فلش مموری نرسیده است.»
با write cache، کامپیوتر شما فرایند انتقال و کپیبرداری را در پسزمینه اجرا میکند. تمام این فرایند خیلی سریع و در عرض چند میلیثانیه اتفاق میافتد. در کامپیوترهای مک، همواره از write cache استفاده میشود، اما در سیستمهای ویندوزی این روش بهصورت پیشفرض غیرفعال است و کاربران میتوانند آن را بهصورت دستی فعال کنند.
«پاولو» در مورد ارتباط این بخش با Eject کردن میگوید: «با این کار ما به سیستم میگوییم که میخواهیم فلش مموری را از کامپیوتر بیرون بکشیم و به همین خاطر محتوای write cache باید کاملا خالی شود.»
کامپیوترهایی که از write cache استفاده میکنند، اگر کاربر قبل از بیرون کشیدن فلش مموری آن را Eject نکند، شاید بخشی از این فایلها بهدرستی منتقل نشوند. به همین خاطر، «پاولو» توصیه میکند که کاربران کامپیوترهای مک، بهتر است از فرایند Eject کردن بهره ببرند؛ بنابراین اگر در حین فرایند انتقال معمولی یا فعالیت write cache در پسزمینه فلش مموری را بیرون بکشیم، چه مشکلاتی پدید میآید؟
اولین احتمالی که باید مطرح کنیم، مخدوش شدن فایلهای ارسالی است، البته به احتمال زیاد مشکلی برای فایل مبدأ به وجود نمیآید. بعد از آن، باید احتمال مخدوش شدن دیگر فایلهای موجود در فلش مموری را هم در نظر بگیریم. بزرگترین مشکلی که شاید پدیدار شود، اختلال در نحوهی ذخیرهسازی فایلها در فلش مموری است که باعث میشود فلش مموری نتواند به فایلهای ذخیره شده در حافظه خود دسترسی پیدا کند.
شرکت «سندیسک» (SanDisk) که یکی از بزرگترین سازندگان حافظههای جانبی در جهان محسوب میشود، در این باره میگوید: «اگر از فلش مموری، هارد اکسترنال یا کارت SD استفاده میکنید، توصیه میکنیم که قبل از خروج آنها از کامپیوتر، دوربین یا گوشی، ابتدا از طریق نرمافزاری آنها را Eject کنید. از آنجایی که ما نمیتوانیم فرایندهای فعال در پسزمینه را مشاهده کنیم، عدم انجام این کار میتواند مشکلزا باشد.».
اما بهتر است خوشبین باشیم
خب بالاخره Eject کردن ضروری است یا نه؟ «جیم والدو» (Jim Waldo)، رییس بخش تکنولوژی یکی از دانشکدههای هاروارد، میگوید: «عموما، انجام یا عدم انجام این کار تأثیر چندان مهمی ندارد.» او در ادامه میگوید: «اگر کاربر موردنظر دقیقا در زمان بسیار نامناسب فلش مموری خود را از سیستم بیرون بکشد، چنین کاری میتواند تأثیر منفی در عملکرد فلش مموری داشته باشند که البته احتمال چنین موضوعی بسیار پایین است.» به عبارتی دیگر، خراب شدن فلش مموری به دلیل انجام چنین کاری خیلی خیلی نامحتمل است.
اگر نگران بیرون کشیدن فلش مموری در وسط فرایند مربوط به write cache هستید، باید بگوییم این فرایند آنقدر سریع انجام میگیرد که انسانها اصلا نباید بابت آن نگرانی داشته باشد. «والدو» در همین ارتباط میگوید تنها ابرقهرمانهایی مانند «فلش» باید نگران این موضوع باشند.
«فرانک وانگ» هم سرعت بالای این فرایندها را تایید میکند. «زمانی که به نظر میرسد فرایند انتقال به پایان رسیده و میخواهید فلش مموری را از سیستم بیرون بکشید، مطمئن باشید که فرایند اصلی پیش از آن به اتمام رسیده است.»
به طور خلاصه، اگر کاربر محافظهکاری هستید، توصیه میکنیم این موارد را به خاطر بسپارید: در میان فرایند انتقال فلش مموری را بیرون نکشید و بعد از اتمام آن هم برای بیرون کشیدن، چند میلیثانیه صبر کنید. حواستان باشد که کامپیوترهای مک از روش write cache استفاده میکنند، اما کامپیوترهای ویندوزی بهصورت پیشفرض از این روش بهره نمیبرند.
هارد اکسترنال
سرانجام، در مورد هاردهای اکسترنال بهتر است محکمکاری کنید، هرچند در زمینهی حافظههای SSD لازم نیست خیلی نگران باشید. اگر از این هاردها برای گرفتن نسخهی پشتیبان استفاده میکنید، بهتر است قبل از بیرون کشیدن آن، بر گزینهی Eject کلیک کنید.
این قانون برای هاردهای اکسترنال قدیمی و حاوی قطعات چرخان هم صدق میکند. زیرا انتقال فایل به هاردهای حاوی قطعات چرخان معمولا بیشتر از حافظههای SSD به طول میانجامد و در ضمن معمولا این قطعات بسیار آسیبپذیر هستند.
«والدو» در نهایت میگوید: «اگر همواره بدون Eject کردن فلش مموری را از سیستم بیرون بکشید، بههیچعنوان نباید هیچگونه نگرانی داشته باشید. نگرانی اصلی باید هنگام وصل کردن آن به سیستم باشد، زیرا همواره باید احتمال ورود ویروس از طریق این روش را در نظر داشته باشید.»