اگر یک شکایت راجع به ویندوز ها باشد هم همون یکی راجع به درخواست ویندوز برای ریست شدن گه گداری است که بعضی وقت ها واقعا آدم دلش می خواهد کیس را خرد خاک شیر کند! خواه این قضیه هنگام نصب آپدیت های ویندوزی، نصب کردن، پاک کردن یا آپدیت کردن برنامه ها باشد، ویندوز گاهی نیاز به ریبوت شدن را احساس می کند و به ما اطلاع می دهد.

معمولاً، ویندوز وقتی نیاز به ریبوت شدن پیدا می کند که نمی تواند فایل های در حال استفاده را ویرایش و به قول خودمانی دستکاری کند. هنگام استفاده، آن فایل ها به نوعی قفل می شوند و تنها زمانی می توانند دچار تغییر و ویرایش شوند که در حال استفاده نباشند.

ریبوت کردن چه کار می کند؟

خیلی خلاصه براتون بگم، ویندوز نمی تواند فایل هایی که در حال استفاده هستند را آپدیت یا پاک کند. هنگامی که ویندوز آپدیت های جدید دانلود می شوند هم تغییرات به درستی نمی تواند بر روی آپدیت های قبلی انجام بپذیرد. آن فایل ها که در حال استفاده هستند در مقایل هر گونه تغییری بسته هستند و برای این که این آپدیت ها بر روی آن ها انجام بپذیرد، ویندوز باید اکثریت سیستم عامل را ببندد برای همین با خاموش شدن رایانه این کار انجام می پذیرد و با یک ریستارت شیک تمامی آن آپدیت ها که تغییرات جدید بر روی آن ها انجام شده لود می شوند.

همچنین ریبوت کردن حین آپدیت کردن یا پاک کردن فایل های از پیش تعیین شده و بعضاً مهم نرم افزاری هم نیاز هست. برای مثال، اگر شما از آنتی ویروس ها یا درایور های سخت افزاری استفاده می کنید که عمیقا درون سیستم فرو رفته اند [:دی]، این گونه فایل ها درون مموری بارگزاری شده و از هر گونه اصلاحات به دور هستند. بنابراین هنگامی که فایل های در حال استفاده پاک یا آپدیت می شوند، ویندوز شاید نیاز به ریبوت سیستم و اصلاح فایل ها پیش از بارگزاری مجدد داشته باشد.

آپدیت ویندوز

مایکروسافت مکرراً برای ویندوز پچ هایی را ارائه می کند که بیشتری آن ها در “Patch Tuesday”، دو مین سه شنبه از هر ماه از راه می رسند. اکثر این آپدیت ها، فایل سیستم عایی را مادیفای (اصلاح و ویرایش) می کند که نمی توانند هنگامی که ویندوز در حال اجراست آپدیت شود، بنابراین به یک ریستارت نیاز پیدا می شود. البته نه این که فکر کنید هر آپدیتی یک ریبوت می خواهد ها! نه! اما برای مثال آپدیت هایی که برای مایکروسافت آفیس صورت می پذیرد نباید نیاز به یک ریبوت داشته باشد. این جور فایل ها، خیلی راحت مثل آبِ خوردن با ریستارت کردن آفیس می توانند بروز رسانی شوند.

علت این هم که ویندوز شما را وادار به ریستارت کردن می کند اینست که آپدیت های امنیتی حتی اگر جان به جانشان هم کنید، تا هنگامی که ویندوز را ریستارت نکنید، نصب نمی شوند! مایکروسافت همچنین به معرفی پاپ آپ هایی پرداحت که امکان ریستارت کردن را با زمان دهی مشخص به شما می دهند و با انتخاب گزینه های مختلف می توانید آن ها را تا زمان هایی معین به تعویق بیندازید.
اگر تجربه اش را داشته باشید، می دانید که آن زمان ها که ویندوز ایکس پی شاخ رایانه ها بود، کرم هایی نظیر Blaster، Sasser و Mydoom حسابی برای خودشان قدرت نمایی می کردند. از این رو مایکروسافت می خواهد از عدم آلودگی آپدیت ها مطمئن شود و از شما می خواهد تا ویندوز را ریست کنید. بنابراین اگر این آپدیت ها چندین روز یا هفته برای ریبوت شدن رایانه صبر می کردند، تاثیر که نمی گزاشتند هیچ، آلوده می شدند و در ضمن رایانه را به فنا می دادند!

نصب، آپدیت یا پاک کردن نرم افزار ها

نرم افزار ها هم گاهی اوقات، هنگامی که شما آن ها را نصب، آپدیت یا پاک می کنید نیاز به ریبوت کردن دارند. این می تواند به این دلیل باشد که آن ها از فایل های سیستمی و درایور های سطح پائین (Low-Level) بهره می برند که روی هوا نمی شود آپدیت یا پاکشان کرد. مثلاً شما برنامه ویروس کش تان را پاک می کنید. برنامه ی نابودگر سیستمی (همان Unistaller) شاید نتواند در جا تمامی فایل ها را پاک کند، پس شما نیاز دارید رایانه را مجدداً راه اندازی کنید. اکنون آنیستالر برای پاک سازی فایلی برنامه می چیند و ویندوز به طور خودکار فایل ها را در بوت بعدی رایانه پاکسازی می کند.

برخی برنامه ها شاید همچنین از شما بخواهند تا بلافاصله پس از نصب، رایانه را ریبوت کنید. فکر کنید مثلا یک آنتی ویروس نصب می کنید، و از شما می خواهد تا رایانه را سریعاً ریست کنید تا فرآیند راه اندازی را چک کند. برخی درایور های سطح پائین هم شاید به یک ریبوت نیاز داشته باشند تا بتوانند کارشان را انجام دهند. البته، این هم ممکن است که برخی نصب کننده های برنامه ها از شما درخواست بوت داشته باشند حتی اگر نیازی به آن نداشته باشید!

ویندوز چگونه حرکات فایل ها را چینش، و آن ها را در ریبوت بعدی پاکسازی می کند؟

ویندوز یک  API  = رابط کاربری برنامه نویسی برنامه ها را ارائه می کند که توسعه دهندگان برنامه ها می توانند با بهره گیری از آن، یک فایل در حال استفاده را منتقل، نام گزاری مجدد یا پاک کنند. این درخواست نامه، از ویندوز می خواهد تا یک فایل را در ریبوت های بعدی، منتقل، رینیم کند و این درخواست در نشانی HKLM\System\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations
در مقدار PendingFileRenameOperation، موجود درون رجیستری نوشته می شود. هنگامی که ویندوز بوت می شود، راهنمای (کلیدِ) رجیستری را چک می کند و هر گونه برنامه عملیاتی برای فایل ها را که از آن درخواست شده بود را به اجرا در می آورد.

شما می توانید فهرست تغییرات فایلی در حال انتظار را با استفاده از the PendMoves and MoveFile SysInternals utilities مشاهده کرده و انتقال ها و حذف های خود را به این وسیله چینش کنید. این ویژگی به شما امکان می دهد تا فایل هایی که هم اکنون به دلیل در حال استفاده بودن، امکان حذف شدن یا انتقال را ندارند، حذف و منتقل کنید. البته گزینه های دیگری هم هستند که امکان انتقال و حدف فایل ها را در ریبوت می دهند و تمامی آن ها با نوشته شدن در این راهنمای رجیستری ویندوز کار می کنند. برخی تسهیلات همچنین به شما اجازه می دهند تا فایل های قفل شده را باز نموده و آن ها را حذف یا منتقل کنید. البته این را هم فراموش نکنید که اگر شما می خواهید فایل هایی که ویندوز مبتنی بر آن هاست را باز کرده یا اصلاحاتی را بر روی آن ها انجام دهید، ممکن است برایتان ایجاد مشکل کند.

لینوکس و دیگر سیستم عامل ها چی؟


این از ویندوز، اما راجع به آن جگر گوشه ها هم؛ اگر تا به حال از لینوکس و دیگر سیستم عامل ها استفاده کرده باشید، حتما می دانید که لینوکس هیچ گاه مانند ویندوز یک بیلبیلکی را برای ریستارت شدن ارائه نمی کند، حتی اگر این موضوع پس از نصب آپدیت های سیستمی باشد. بله درست است، اما خیلی هم راحت نیســـت!
در ویندوز، فایل هایی که در حال استفاده هستند، معمولاً قفل هستند و نمی توانند اصلاح یا پاک شوند. اما در لینوکس قضیه فرق می کند و فایل های در حال استفاده به طور معمول می توانند هزار جور بلا را بپذیرند و جیک شان هم در نیاید! این به این معنی است که این نوع فایل های کتابخانه ای سیستمی می توانند بی درنگ بدون یک ریبوت هم بروز رسانی شوند و یکجور هایی هر فایل در حال استفاده ای می توانند جیکی ثانیه در یک چشم بر هم زدن پاک شود.

اصلش این طوریست که تغییرات الزاماً نمی توانند تا زمانی که سیستم راه اندازی مجدد شود اعمال شوند. برای مثال هنگامی که شما یک آپدیت برای کتابخانه سیستمی نصب می کنید، فایل های موجود در دیسک به سرعت آپدیت خواهد شد اما هر پروسه ی در حال اجرا که در حال استفاده از آن لایبرری است، همچنان از ورژن قدیمی و غیر مطمئن استفاده خواهد کرد. اگر شما یک برنامه را آپدیت کنید، ورژن جدید برنامه، تا زمانی که شما برنامه را ببندید و مجدداً راه اندازی کنید، قابل استفاده نخواهد بود.اگر هم شما یک کرنل لینوکسی نصب کنید، تا هنگامی که رایانه را ریست، و آن را درون کرنل جدید لود نکنید، از کرنل جدید نمی توانید بهره ببرید. البته راه هایی برای سوییچ به یک کرنل جدید بدون ریبوت نیز وجود دارند، اما عموماً درون سیستم های لینوکسی مصرف کننده استفاده نمی شوند و بیشتر برای سرور هایی مورد استفاده قرار می گیرند که نیاز به بیشینه ی (ماکسیمم) آپتایم دارند.

به بیانی دیگر، یک ریبوت بعضی اوقات واقعا الزامی است زیرا باید آپدیت های مهمی را درون خود جای دهد و از اعمال تاثیر بر روی لینوکس مطمئن شود. مطمئنا، اگر شما یک سرور دارید و آپتایم آن برایتان مهم است، می توانید با ریست کردن پروسه های تاثیر پذیرفته، نیاز خود [از آپدیت ها] را برطرف کنید. اما اگر هم یک کاربر دستکتاپی نرمال هستید، شاید خیلی ساده رایانه را ریست کنید و پایان!

اما همه ی این ها که گفتیم  یک چیز خوشحال کننده هم بگوییم؛ پس از سپری شدن این همه زمان که از ظهور رایانه ها می گذرد، ریبوت شدن کمتر مورد نیاز است. ویندوز الان دیگر می تواند با جانشین کردن انواع متفاوتی از درایور ها – مثلا درایور های گرافیکی – از ریبوت های سیستمی بکاهد. ویژگی های امنیتی مدرن (مانند بهره گیری از فایروال یا همان دیوار آتشین ویندوز) ویندوز را ایمن تر ساخته، بنابراین ویندوز ۸ دارای ویژگی ۳ روزه ای برای تائید ریبوت ها پس از آپدیت های ویندوزی می باشد که خیال همه، مخصوصاً تازه کار های رایانه ای را راحت کرده… .