تاریخچه ی:
زبان های پیاده سازی سیستم عامل
سیستم عاملهای اولیه به زبان ((اسمبلی ))نوشته میشدند ولی امروز, اکثر سیستم عاملها به زبان ((C))(یا C++)نوشته میشوند . سیستم عامل ((UNIX)) ,((OS/2)) و ویندوز بیشتر به زبان C نوشته شدهاند و قسمت اندکی از آنها به زبان اسمبلی است.
مهمترین مزیت استفاده از ((زبان سطح بالا)) برای پیاده سازی سیستم عامل قابلیت حمل آن بر روی انواع کامپیوترها و سادگی پیاده سازی , تغییر و بسط دادن سیستم عامل میباشد.
ممکن است ادعا شود پیاده سازی سیستم عامل به زبان C باعث کاهش سرعت و افزایش مصرف حافظه میگردد . اگر چه یک برنامه نویس ماهر زبان اسمبلی , میتواند برنامههای کوچک و بسیار بهینه بنویسد ولی برای برنامههای بزرگ یک ((کامپایلر ))خوب, میتواند تحلیل پیچیده تری نسبت به مغز انسان ماهر انجام داده و بهینه سازیهای کاملی را انجام دهد.
لذا در عمل برنامههای بزرگ C کد اسمبلی بهینه تر و کمتری را تولید میکنند, نسبت به حالتی که برنامهنویس بخواهد همان کاری به زبان اسمبلی انجام دهد . از طرف دیگر در عمل کارایی اصلی نتیجه ((ساختمان داده)) و ((الگوریتم))های بهتر است نه نتیجه نوشتن برنامه به زبان اسمبلی .
همچنین اگر چه سیستم عاملها برنامههای بزرگی هستند ولی تنها بخش کوچکی از کد آنها, نسبت به کارایی , بحرانی(Critical) میباشد مثل ((مدیریت حافظه)) و ((زمانبندی)) CPU .
لذا پس از آنکه سیستم عامل به زبان سطح بالا نوشته شد و به درستی عمل کرد می توان روتین های گلوگاه (bottleneck) و مهم را شناسایی کرد و سپس آنها را با روتینهای معادل زبان اسمبلی جایگزین نمود.