CLR چیست
زمان مطالعه 1 دقیقه
3 مهر 1400
نویسنده پایدار سامانه
تعداد کامنت 0

CLR چیست؟

CLR که مخفف عبارت Common Language Runtime می باشد یک زبان میانی مشترک بین سیستم عامل و زبان های برنامه نویسی دات نت است. هر برنامه ای که به زبان های موجود در چارچوب دات نت نوشته می شود در ابتدا کامپایلر دات نت آن را به یک زبان میانی که به آن IL مخفف Intermediate Language می گوبند تبدیل می شود که برای تمامی زبان ها و در تمامی سیستم ها مشترک می باشد و CLR آن را متوجه می شود. CLR بعد از آن می تواند توسط یک کامپایلر در لحظه یا Just in Time Compiler این کد ها را با توجه سیستم عامل مورد استفاده ترجمه و آماده اجرا می کند.

 

معماری .NET Framework
معماری .NET Framework

همانطور که تصویر بالا مشاهده میفرمایید بعد از کامپایل زبان برنامه نویسی و تبدیل به کد های IL که زبان مشترکی برای کل زبان های دات نت است، این CLR است که کد های زبان مشترک را به زبان ماشین و قابل فهم برای کامپیوتر تبدیل می کند، یعنی کامپایل در دو مرحله انجام می شود و در تصویر این مراحل به صراحت مشخص هستند.

Common language runtime  چیست؟

به زبان ساده میتوان گفت بخشی از ماشین مجازی چارچوب دات نت می باشد که وظیفه ی او مدیریت اجرای برنامه های دات نت را بر عهده دارد.

فریم ورک دات نت چیست؟

(NET FRAMEWORK)  یک پلت فرم توسعه نرم افزار است که توسط مایکروسافت برای ساخت و اجرای برنامه های کاربردی ویندوز توسعه یافته است. چارچوب دات نت از ابزارهای توسعه دهنده، زبان های برنامه نویسی و کتابخانه ها برای ساخت برنامه های دسکتاپ و وب تشکیل شده است. همچنین برای ساخت وب سایت ها، وب سرویس ها و بازی ها استفاده می شود.


برای کسب اطلاعات بیشتر در مورد فریم ورک میتوانید مقاله ی فریم ورک چیست را مطالعه فرمایید.


وظایف CLR

مهمترین بخش کل پلتفرم دات نت CLR است که یک ماشین مجازی به حساب می آید و در یک جمله CLR وظیفه اجرای برنامه را بر عهده دارد، برخی از وظایف مهم CLR بدین شرح می باشد:

  • خواندن اسمبلی ها (Assembly Resolver)
  • بارگذاری و لود اسمبلی ها (Assembly Loader)
  • مدیریت حافظه و Garbage Collection
  • مدیریت خطاها (Exception Manager)
  • مدیریت فرآیند ها (Thread Management)
  • کامپایل کدهای CIL به زبان ماشین (IL to Native compiler)

Garbage Collector

آبجکت ها و اشیائ بلا ستفاده را از فضای حافظه پاک میکند و آن را تمیز می کند و در کل وظیفه مدیریت خودکار حافظه را برعهده دارد

IL to Native compiler

همان موتور JIT compiler است که مخفف Just-in-time Compiler بوده و وظیفه تبدیل کد های IL به کد های خام سیستم عامل و به عبارتی قابل تبدیل به زبان ماشین می کند.

Exception Manager

مدیریت خطا ها و Exception های برنامه بر عهده این بخش است، پردازش کد های داخل Catch را انجام می دهد و هندل می کند، اگر هم Exception ای تولید شود که داخل Catch نباشد برنامه حالت اجرا خواهد شد.

اشتراک گذاری در شبکه های اجتماعی

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.