خصوصیات مهم فایلهای اجرایی در زبان های برنامه نویسی

خصوصیات مهم فایلهای اجرایی در زبان های برنامه نویسیReviewed by آریانا on Oct 21Rating: 5.0خصوصیات مهم فایلهای اجرایی در زبان های برنامه نویسیدر مورد برخی از خصوصیات مهم فایلهای اجرایی در زبان های برنامه نویسی معروف همچون C++ Visual ، Delphi ، C++ Builder و Visual Basic صحبت کنیم.

در این بخش می خواهیم در مورد برخی از خصوصیات مهم فایلهای اجرایی در زبان های برنامه نویسی معروف همچون C++ Visual ، Delphi ، C++ Builder و Visual  Basic  صحبت کنیم.

++Visual C

فایل های اجرایی تولید شده توسط ++Visual C به طور کامل به زبان ماشین ترجمه می شوند و اسامی و برچسب ها و سایر راهنماها در فایل اجرایی حذف شده و قابل دسترسی نیستند.

معمولا منابع (Resource) فایل های اجرایی تولید شده، منابع استاندارد از قبیل Dialog ، Bitmap و … هستند.

فایل های اجرایی تولید شده توسط ++Visual C از سرعت بالایی برخوردار هستند. به همین دلیل برای نوشتن درایورهای سخت افزاری و برنامه هایی که نیاز به سرعت بالا دارند از آن استفاده می شود.

C++ Builder و Delphi

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

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

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

Visual Basic

فایل های اجرایی تولید شده توسط Visual Basic کاملا به زبان ماشین ترجمه نمی شوند و به طور معمول از توابع API به طور مستقیم استفاده نمی کنند. کلیه کارهای اصلی از قبیل مقایسه ها، انتصاب ها، عملیات منطقی، فراخوانی توابع و … در این فایل ها توسط توابع کتابخانه های MSVBVM انجام می شوند.

در حقیقت فایل های اجرایی تولید شده حاوی حجم اندکی کد ماشین بعلاوه فراخوانی های متعددی از فایل MsvbvmXX.dll هستند. به همین دلیل حجم فایل های اجرایی تولید شده بسیار کوچک بوده و از سرعت پایینی برخوردار هستند.

فیال های اجرایی تولید شده به طور معمول از هیچ یک از منابع استاندارد ویندوز مانند Dialog ها، Bitmap ها و … استفاده نمی کنند و در حقیقت فرمت ذخیره سازی و محل منابع با تمام فایل های اجرایی تولید شده توسط سایر کامپایلرها متفاوت بوده و فایل MsvbvmXX.dll  مسئولیت مدیریت آنها را در زمان اجرا بر عهده می گیرد.

 VB.Net , C#) .NET  , …)

ساختار اجرایی فایل های تولید شده توسط کامپایلرهای .NET با ساختار فایل های تولید شده توسط سایر کامپایلرها کاملا متفاوت است. کدها به زبان ماشین ترجمه نمی شوند بلکه به یک زبان واسط به نام  (IL  (Intermediate Language ترجمه شده و توابع موجود در کتابخانه های  Framework.NET طی مراحلی آنها را به دستورات قابل اجرا توسط ماشین تبدیل می کنند. همین امر باعث شده است که فایل های اجرایی تولید شده توسط این زبانها بسیار کند بوده و منابع سیستم را با سرعت بالایی مصرف کنند.

همانند Visual Basic این زبان ها نیز به طور معمول از منابع استاندارد ویندوز برای ایجاد رابط کاربر و … استفاده نمی کنند و مدیریت جداگانه ای برای این موارد دارند.

منبع:کتاب CRACK و تکنیک های نفوذ به نرم افزار نوشته مهندس امید غلامی و مهندس سید بهزاد لاجوردی

 

پاسخ دهید