1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

زبان‌های پیاده‌سازی سیستم عامل

شروع موضوع توسط byte ‏25/6/11 در انجمن سیستم عامل

  1. کاربر فوق حرفه ای

    تاریخ عضویت:
    ‏24/1/11
    ارسال ها:
    2,464
    تشکر شده:
    1,317
    امتیاز دستاورد:
    113
    حرفه:
    دانشجو
    [​IMG]سیستم‌های عامل اولیه به زبان اسمبلی نوشته می‌شدند اما امروز، اکثر سیستم‌های عامل‌ به زبان C یا (C++) نوشته می‌شوند.
    سیستم عامل (UNIX ,OS/2) و ویندوز بیش‌تر به زبان C نوشته‌ شده‌اند و قسمت اندکی از آن‌ها به زبان اسمبلی است. مهم‌ترین مزیت استفاده از زبان سطح بالا برای پیاده‌سازی سیستم عامل قابلیت حمل آن برروی انواع رایانه‌ها و سادگی پیاده‌سازی، تغییر و بسط دادن سیستم عامل است.
    ممکن است ادعا شود که پیاده‌سازی سیستم عامل به زبان C باعث کاهش سرعت و افزایش مصرف حافظه می‌شود. اگرچه یک برنامه‌نویس ماهر زبان اسمبلی می‌تواند برنامه‌های کوچک و بسیار بهینه بنویسد ولی برای برنامه‌های بزرگ یک کامپایلر خوب، می‌تواند تحلیل پیچیده‌تری نسبت به مغز انسان ماهر انجام داده و بهینه‌سازی‌های کاملی را انجام دهد.
    بنابراین در عمل برنامه‌های بزرگ C کد اسمبلی بهینه‌تر و کم‌تری را تولید می‌کنند، نسبت به حالتی که برنامه‌نویس بخواهد همان کاری به زبان اسمبلی انجام دهد. از طرف دیگر در عمل کارایی اصلی نتیجه ساختمان داده و الگوریتم‌های بهتر است نه نتیجه نوشتن برنامه به زبان اسمبلی.
    اگرچه سیستم‌های عامل برنامه‌های بزرگی هستند ولی تنها بخش کوچکی از کد آنها، نسبت به کارایی، بحرانی(Critical) است؛ مثل مدیریت حافظه و زمانبندی CPU. لذا پس از آنکه سیستم عامل به زبان سطح بالا نوشته شد و به درستی عمل کرد، می‌توان روتین‌های گلوگاه (bottleneck) و مهم را شناسایی کرد و سپس آن‌ها را با روتین‌های معادل زبان اسمبلی جایگزین کرد.