ByteNex
ByteNex
هستهٔ عامل برای سیستم‌های خودبهبوددهنده

ByteNex›Docs›یادداشت مهندسی: طراحی kill switch مرکزی

یادداشت مهندسی: طراحی kill switch مرکزی

نگاهی به اینکه kill switch مرکزی چگونه طراحی شد تا اجرا را فوراً متوقف کند، بی‌آنکه زمینه‌ی ایزوله یا وضعیت حافظه خراب شود.

یادداشت مهندسی: طراحی kill switch مرکزی

نگاهی به اینکه kill switch مرکزی چگونه طراحی شد تا اجرا را فوراً متوقف کند، بی‌آنکه زمینه‌ی ایزوله یا وضعیت حافظه خراب شود.

وقتی اصل خودمحافظتی را طراحی می‌کردیم، kill switch (کلید توقف اضطراری) حیاتی‌ترین مؤلفه بود. سیستمی که پیوسته اجرا می‌شود باید راهی فوری برای توقف داشته باشد.

چالش، خودِ متوقف کردن اجرا نبود، بلکه متوقف کردن آن بدون خراب شدن زمینه بود. اگر کلید فرایند را وسط نوشتن می‌کُشت، وضعیت حافظه در حالتی ناسازگار باقی می‌ماند.

برای حل این مسئله، kill switch در مرز چرخه عمل می‌کند. اجازه می‌دهد عملیات اتمی جاری کامل شود، وضعیت را ثبت می‌کند و سپس چرخه‌ی بعدی را متوقف می‌کند. به این ترتیب، وقتی کرنل از سر گرفته می‌شود، به وضعیت پایدار برمی‌گردد.

این یادداشت مهندسی بخشی از تلاش مستمر ما برای مستندسازی نحوه‌ی کار BX-System در لایه‌های زیرین است. kill switch مؤلفه‌ای مرکزی در اصل خودمحافظتی است.

wak · 2017-11-08