Bir proqram və EXE faylı arasındakı fərq nədir?


cavab 1:

Əsasən, ".exe faylı" daha konkretdir.

.Exe fayl uzantısı, sənədin bir neçə əlaqəli formatlardan birində "icra edilə bilən bir proqram" ehtiva etdiyini göstərir. (Vikipediyada layiqli bir xülasə var; müasir icra olunan Windows sənədləri Microsoft-un PE formatındadır.)

İndiki vaxtda bir növ tərcüməçi tərəfindən yerinə yetirilə bilən müxtəlif formatlar mövcuddur - onlardan çoxu sadəcə bir şəxsin mətn redaktoru ilə yazdığı koddur. Hesablamanın köhnə günlərində (1970-1990-cı illərdə) bu cür tərcüməçilər yararlı deyildi, çünki sürət və saxlama tutumu çox məhdud idi. Bir proqramı işə salmaq üçün CPU proqramı birbaşa işlədə bilməsi üçün tərtib edilməli idi.

Beləliklə, "icra edilə bilən bir proqram" üçün bir fayl formatı ən azı ehtiva edir

  • İcra ediləcəyi kompüterin maşın koduna çevrilən proqram kodu

Və əksər hallarda

  • Proqram kodunun yaddaşda necə qurulması lazım olduğunu, hansı digər yaddaşın mövcud olduğunu və proqramın başladıldığı zaman sistemin vəziyyətinə aid digər məlumatları. Proqramın işlədiləcəyi kompüter növü, əsasən CPU tipi və əməliyyat sisteminin uyğunluğu haqqında bəzi məlumatlar. Proqramın istifadə etdiyi ortaq kitabxanalara və yaddaşlarda olmalı olduqları yerlərə dair bütün məlumatlar. (Windows-da bunlar DLL-lərdir.) Proqramın icra edərkən istifadə etdiyi məlumat mənbələri, məs. B. istifadəçiyə mesajlar üçün simvollar, səslər, mətn sətirləri (bəlkə də bir neçə dildə).

Hər bir əməliyyat sistemində yüklənə və icra edilə bilən ən azı bir icra olunan proqram sənəd formatı var. Ümumiyyətlə, yükləyici CPU və əməliyyat sistemi ilə uyğunluğu yoxlayır, tələb olunan paylaşılan kitabxanaların mövcud olub-olmadığını yoxlayır, proqramın icrası üçün yeni bir proses yaradır, maşın kodunu və məlumat mənbələrini yaddaşdakı proses ünvanı məkanında göstərilən yerlərə yükləyir. Hələ yaddaşında olmayan bütün paylaşılan kitabxanaları yükləyin və bütün əlaqəli paylaşılan kitabxanaları prosesin adres sahəsinə xəritələyin. Sonda davam edən prosesə başlayın.

Beləliklə, "bir proqram" sadəcə birinin yazdığı və müəyyən bir şərtlərə cavab verildiyi təqdirdə kompüterdə işləyə biləcəyi bir şeydir.

Bir EXE faylı, CPU, əməliyyat sistemi və faylda göstərilən ortaq kitabxanalarla hər hansı bir kompüterdə işləyə bilən bir proqramdır.


cavab 2:

Deyərdim ki, EXE faylı proqramın alt hissəsidir. Exe faylları proqramlardır, lakin bütün proqramlar exe faylları deyil.

Bütün proqramlar bu və ya digər şəkildə yerinə yetirilməlidir, ancaq kitabxanalarda tərtib edilə bilər və digər exe sənədləri ilə də yerinə yetirilə bilər. Və ya Java kimi proqramlar ara kod (bayt) şəklində tərtib oluna bilər və sonra virtual maşın tərəfindən yerinə yetirilə bilər. Və ya proqramlar tərcüməçi proqramı tərəfindən şərh olunan skriptlər ola bilər.


cavab 3:

Deyərdim ki, EXE faylı proqramın alt hissəsidir. Exe faylları proqramlardır, lakin bütün proqramlar exe faylları deyil.

Bütün proqramlar bu və ya digər şəkildə yerinə yetirilməlidir, ancaq kitabxanalarda tərtib edilə bilər və digər exe sənədləri ilə də yerinə yetirilə bilər. Və ya Java kimi proqramlar ara kod (bayt) şəklində tərtib oluna bilər və sonra virtual maşın tərəfindən yerinə yetirilə bilər. Və ya proqramlar tərcüməçi proqramı tərəfindən şərh olunan skriptlər ola bilər.