導航:首頁 > 源碼編譯 > 對程序的編譯在操作系統中完成

對程序的編譯在操作系統中完成

發布時間:2022-08-02 18:14:23

⑴ 簡單說明什麼是程序 而什麼是進程

進程(Process)是最初定義在Unix等多用戶、多任務操作系統環境下用於表示應用程序在內存環境中基本執行單元的概念。以Unix操作系統為例,進程是Unix操作系統環境中的基本成分、是系統資源分配的基本單位。Unix操作系統中完成的幾乎所有用戶管理和資源分配等工作都是通過操作系統對應用程序進程的控制來實現的。

C、C++、java等語言編寫的源程序經相應的編譯器編譯成可執行文件後,提交給計算機處理器運行。這時,處在可執行狀態中的應用程序稱為進程。從用戶角度來看,進程是應用程序的一個執行過程。從操作系統核心角度來看,進程代表的是操作系統分配的內存、CPU時間片等資源的基本單位,是為正在運行的程序提供的運行環境。進程與應用程序的區別在於應用程序作為一個靜態文件存儲在計算機系統的硬碟等存儲空間中,而進程則是處於動態條件下由操作系統維護的系統資源管理實體。

進程和程序的區別
①進程是程序的一次執行,屬於動態概念,而程序是一組有序的指令,是一種靜態概念。但進程離開了程序也就失去了存在的意義。
②一個進程可以執行一個或幾個程序z反之,同一程序可能由幾個進程同時執行。③程序可作為軟體資源長期保留,而進程是程序的一次執行過程,是暫時的。進程具有生命期。
④進程具有並發性,能與其它進程並發運行。而程序不具備這種特徵。
⑤進程是一個獨立的運行單位,也是系統進行資源分配和調度的一個獨立單位。因此,進程具有獨立性,但有時進程間又具有相互制約性。

⑵ 如果操作系統是C語言開發的,那麼C編譯器運行在什麼上呢

操作系統是c開發的,跟c編譯器運行在機器上,這兩個問題一點關系都沒有。
在沒有c編譯器之前的那個時代,當然只能用匯編寫操作系統了,但是後來用匯編開發了c編譯器,就可以用c寫操作系統了,用c寫了操作系統,經過c編譯器編譯之後得到的就是機器代碼(可以認為是匯編),c編譯器只是一個工具,反正你給機器代碼給cpu執行就行了,沒有任何問題呵呵

這就好比如在原始社會人類只能用手挖東西,挖了鐵以後就可以用鐵做出鐵器來挖東西,就是這么發展。
c語言又可以用來開發更高級的編譯器,更高級的編譯器又可以拿來開發操作系統了,只要你喜歡。
不同的是匯編直接寫的執行效率比較高,高級語言寫的執行效率比較低,但是高級語言開發的時間比較短,提高工作效率

⑶ C語言編譯執行的全過程是怎樣的

不明白樓主什麼意思,就是先把你的代碼轉為匯編代碼,然後轉為二進制文件,讀入內存執行。

⑷ 在現代計算機中,用戶用高級語言編寫的源程序必須通過編譯程序翻譯成目標程序之後方可執行,因此說,用戶

看看吧。。對你有用

問題一:計算機的基本組成,各部件的主要功能以及各部件之間的關系?
================
組成計算機的基本部件有中央處理器(CPU運算器和控制器)、存儲器、輸入輸出設備和匯流排.
各部件的作用及關系:中央處理器,在早期計算機中分成運算器和控制器兩部分,運算器是對信息或者是數據進行處理和運算的部件,經常進行的是算術運算和邏輯運算.
控制器主要用來實現計算機本身運行過程的自動化,即實現程序的自動化執行,在控制器控制下,從輸入設備輸入程序和數據,並自動存放到存儲器中,然後由控制器指揮個部件協同工作以執行程序,最後將結果列印輸出.存儲器: 存儲數據和程序.
匯流排:連接各功能部件並傳送信息的公共通道。
輸入輸出設備: 用於將信息轉換並與主機通信傳送數據.

問題二:機器語言、匯編語言、高級語言有什麼區別?
=================
人用於同計算機交往的語言叫做程序設計語言。程序設計語言案發展先後順序通常分為機器語言、匯編語言和高級語言。
機器語言:是一種CPU的指令系統,是由二進制代碼編寫,能夠直接被機器識別的程序設計語言。
匯編語言:是用能夠反映指令功能的助記符來表示指令的程學設計語言,用助記符來代表0、1編程,即符號化了的機器語言。
面向機器的語言都屬於低級語言,機器語言和匯編語言均屬於低級語言。
高級語言:1954年出現的FORTRAN語言以及隨後相繼出現的語言屬於高級語言,不再是面向機器的語言,二是面向解題的過程。面向過程的計算機語言屬於高級語言,人們常用的高級語言有:BASIC、FORTRAN、Pascal、C語言等。

問題三:編譯語言與解釋性語言的區別是什麼?
===================
1.編譯性語言是把源程序編譯成目標機器代碼,目標機器代碼可以直接在適合的機器上執行
解釋性語言編的源程序,需要解釋器把源語句一條條翻譯成目標機器代碼,一條條執行。現代解釋性語言通常把源程序編譯成中間代碼,然後用解釋器把中間代碼一條條翻譯成目標機器代碼,一條條執行。
2.編譯性的delphi, c, c++
解釋性的c#, java, vb注意java可以用jbuilder編譯成目標機器代碼。
3.區別 編譯是將源程序翻譯成可執行的目標代碼,翻譯與執行是分開的;而解釋是對源程序的翻譯與執行一次性完成,不生成可存儲的目標代碼。這只是表象,二者背後的最大區別是:對解釋執行而言,程序運行時的控制權在解釋器而不在用戶程序;對編譯執行而言,運行時的控制權在用戶程序。

解釋具有良好的動態特性和可移植性,比如在解釋執行時可以動態改變變數的類型、對程序進行修改以及在程序中插入良好的調試診斷信息等,而將解釋器移植到不同的系統上,則程序不用改動就可以在移植了解釋器的系統上運行。同時解釋器也有很大的缺點,比如執行效率低,佔用空間大,因為不僅要給用戶程序分配空間,解釋器本身也佔用了寶貴的系統資源。

問題四:操作系統的作用是什麼?
================
操作系統(operating system)是用戶和計算機之間的界面. 一方面操作系統管理著所有計算機系統資源, 另一方面操作系統為用戶提供了一個抽象概念上的計算機. 在操作系統的幫助下, 用戶使用計算機時, 避免了對計算機系統硬體的直接操作.

對計算機系統而言, 操作系統是對所有系統資源進行管理的程序的集合; 對用戶而言, 操作系統提供了對系統資源進行有效利用的簡單抽象的方法

安裝了操作系統的計算機稱為虛擬機(virtual machine), 是對裸機的擴展.
分為用戶和網路操作系統

問題五:簡述Word的基本功能 ?

===================
word是軟體龍頭企業MS(微軟)的OFFICE系列軟體中的一個成員
word在中文字,詞的意思,就可以知道他是一款文字處理軟體
實際上他的功能非常強大
可以處理日常的辦公文檔,排版,處理數據,建立表格,還可以做簡單的網頁
而且通過其他軟體還可以直接發傳真或者發mail等
能滿足普通人的絕大部分日常辦公的需求

問題六:WORD內命令的區別?
======================
1.剪切只是將你選中的內容放到你的剪貼板上,並沒有消失,你需要的時候可以右鍵粘貼,文字就又會重新出現;而如果選擇清除的話你選中的內容就會自動消失了的,而不能得到該內容,還想要的話你就只能重新打進去了
2.
復制」命令也能將選定的信息復制一份到剪貼板中,但與「剪切」命令不同的是,原信息仍保留在文檔中。

3.最後一個,我很形向的告訴你吧:
是一本帳本,帳本的一頁,帳本一頁中的一格

都快累死了!!!!!!!1111找了好多資料 看看吧。。對你有用

⑸ java編寫的程序如何獨立在操作系統上運行

可以啊,如果你是用swing或swt之類的java GUI程序,借用ide編譯出來就可以。

比如,用eclipse rcp,就可以輸出基於window的獨立程序或者基於linux的獨立程序,無需安裝jvm之類的依賴環境,因為jvm已打包到他的獨立程序里啦。

⑹ 新手學堂:Linux操作系統中如何編譯C程序

登陸後用vi
寫一個C程序:
過程如下:
vi
Hellolinux.c
回車
進入後選擇一種輸入方式(a
,i
,o);
#include
main()
{
printf(Hello
linux
!n);
}
寫完程序後Esc
並保存退出(:w
保存
:q
退出)
然後用gcc
編譯:
gcc
Hellolinux.c
回車
用ls
查看就會看到一個Hellolinux.out
文件,下面我們運行它;

./Hellolinux.out
回車
將會顯示
Hello
linux
!

⑺ C語言編譯操作系統的什麼部分,編譯一個系統都需要編譯什麼系統文件,讓系統能夠運行

C編譯器可以理解為開發工具,按照你說的,操作系統是C語言開發的,那用什麼開發它呢,用的就是C編譯器吧(不止編譯器,編譯器只是很少的一部分,這里用它代替開發環境),C編譯器要裝在電腦的操作系統上吧,然後你在裝有編譯器的操作系統下完成了另一個操作系統的開發,然後將你完成的這個操作系統安裝在另一台機器上,然後你的C開發的操作系統就運行了。所以說,C編譯器是運行在需要開發C程序的操作系統下的,這里你可以把你用C語言開發的操作系統認為是一個C程序。你在開發C程序而已,那這樣你就該知道你的C編譯器運行在什麼上面了吧。

⑻ 操作系統在匯編語言和高級語言的使用和實現過程中提供了哪些所需的基本操作

任何一台裸機必須配上操作系統才能運行。任何一種操作系統都要有cpu處理機管理、存儲器管理、I/O外設管理和文件管理等功能。高級語言和匯編語言的編譯器必須在操作系統支持下才能完成將高級語言和匯編源程序轉換成二進制機器代碼,在機器代碼執行時,上述的操作系統各功能就要發揮作用了。

⑼ 什麼功能不是操作系統直接完成的功能

對程序進行編譯功能不是操作系統直接完成的功能,因為任何編程語言必須安裝對應的編譯器才能編譯

閱讀全文

與對程序的編譯在操作系統中完成相關的資料

熱點內容
用什麼工具製作安卓應用 瀏覽:484
單片機數碼管的代碼 瀏覽:775
第一款安卓手機是什麼牌子 瀏覽:394
java非同步web 瀏覽:270
51單片機讀tf卡 瀏覽:936
linux下獲取文件 瀏覽:318
加密文件電腦顯示無屏幕截取許可權 瀏覽:352
虛榮安卓用什麼充值 瀏覽:750
阿里雲沒有伺服器如何備案 瀏覽:706
python用戶特性總結 瀏覽:730
華為門鑰匙加密卡怎麼辦 瀏覽:921
南京解壓車要帶什麼 瀏覽:567
天堂2編譯視頻教程 瀏覽:397
伺服器沒有進程怎麼辦 瀏覽:789
阿里雲發布新物種神龍雲伺服器 瀏覽:64
數據結構遞歸演算法統計二叉樹節點 瀏覽:672
ev3怎麼編程 瀏覽:706
gzip壓縮教程 瀏覽:353
解壓模擬例子 瀏覽:989
流媒體伺服器如何實現視頻轉發 瀏覽:62