我們已經(jīng)知道程序就是一種流程,那么它有哪些形式呢?

圖一是Windows系統(tǒng)文件,注意其中的cmd.exe是一種外殼程序。.exe是可執(zhí)行程序,可以直接運(yùn)行的程序。.dll也是一種程序,只是它不能獨(dú)立運(yùn)行,必須附加在.exe上才能運(yùn)行。

圖二是C語(yǔ)言程序文件,一般稱為源代碼或代碼,它可以通過編譯器編譯成.exe或.dll文件。

圖三是一個(gè)BAT文件,就是批處理文件,它就是cmd.exe可以執(zhí)行的程序。
外殼程序(Shell)是一種特殊的程序,它具有輸入輸出的功能,用它來(lái)加載其它的程序。被加載的程序,就像C代碼里面main函數(shù)有返回值,外殼程序是可以獲取到的。所以,BAT文件也是一種Shell腳本。Windows還有一個(gè)重要的Shell就是桌面管理程序explorer.exe。
類似BAT這樣有一個(gè)運(yùn)行機(jī)的程序,還有很多其它的高級(jí)語(yǔ)言(C#、Java、js、python等等),它們都是解釋性語(yǔ)言。