日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

转换环境与执行环境、宿主环境与独立环境、宿主实现与独立实现

發布時間:2025/4/5 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 转换环境与执行环境、宿主环境与独立环境、宿主实现与独立实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • 1 轉換環境與執行環境
      • 1.1 轉換環境與執行環境的概念
      • 1.2 為什么要區分轉換環境和執行環境
    • 2 宿主環境和獨立環境
      • 2.1 宿主環境
      • 2.2 獨立環境
    • 3 宿主實現、獨立實現
      • 3.1 宿主實現
      • 3.2 獨立實現

1 轉換環境與執行環境

1.1 轉換環境與執行環境的概念

轉換環境 :程序轉換時所處的環境(程序轉換:指的是從源文件到可執行文件的轉換,就是我們常說的編譯),通俗點就是指程序轉換時所用的計算機。

注意:計算機包括了 PC、工作站、服務器、手機、平板電腦、筆記本、單片機等等。

執行環境 :程序執行時所處的環境,通俗點就是指程序執行時所用的計算機。

轉換環境和執行環境可能是相同的,比如:

  • 對于正在學習階段的我們來說,肯定是在同一臺PC上完成的對程序的轉換和執行。
  • 這時,轉換環境和執行環境就是相同的,它們都是我們所使用的這臺PC。

大多數時候,轉換環境和執行環境并不相同,比如:

  • 開發一款商業軟件,我們需要在自己的PC上完成轉換工作,而程序的執行卻是在用戶的PC上。
  • 這時,轉換環境和執行環境就可能是不相同的。
  • 轉換環境就是你所使用的PC、執行環境就是用戶所使用的PC。

1.2 為什么要區分轉換環境和執行環境

不同的環境具有不同的軟硬件配置(不同的CPU架構、不同的操作系統、不同的字符集 等等),比如:手機的處理器可能是ARM架構、PC的處理器可能是X86架構。

如果我們用手機編寫一個在手機上運行的軟件是很麻煩的,因為,手機屏幕太小了,操作起來非常的不方便。所以,我們通常是在PC上建立一個手機仿真環境,然后在PC上編寫和轉換要在手機上執行的程序。這時,這個程序的轉換環境就是PC,執行環境就是手機。

很顯然,如果我們根據轉換環境來編寫和轉換程序的話,由于轉換環境和執行環境的CPU架構、操作系統等等都是不同的。那么,這個程序只能運行在PC上,而不能運行在手機上,這明顯違背了我們的預期。所以呢,在寫程序前,我們需要考慮它的執行環境到底是怎么樣的,我們只能根據執行環境來編寫和轉換程序,這樣才能達到我們的預期。這就是我們區分轉換環境和執行環境的原因。


2 宿主環境和獨立環境

執行環境分為兩種:分別是宿主環境和獨立環境。

2.1 宿主環境

程序的執行需要依靠操作系統、或者其它軟件的支撐。那么,這個程序的執行環境就是宿主環境。
比如:PC上的程序,它的執行環境就是宿主環境(操作系統內核除外)。

2.2 獨立環境

程序的執行不需要依靠操作系統、或者其它軟件的支撐。那么,這個程序的執行環境就是獨立環境。
比如:單片機上的程序,它的執行環境就是獨立環境。

一個程序的執行環境到底是宿主環境、還是獨立環境,是由程序是否可以獨立運行來決定的。


3 宿主實現、獨立實現

3.1 宿主實現

宿主實現:轉換(執行環境為宿主環境的程序)的實現,比如:gcc。

宿主實現可以接受任何嚴格依從C標準的C程序。

3.2 獨立實現

獨立實現:轉換(執行環境為獨立環境的程序)的實現。比如:keil --> 類似于CodeBlocks的集成開發環境 --> 專門用來為單片機開發軟件的 --> 它內置了C實現。

獨立實現可以接受任何嚴格依從C標準的C程序,但程序不能使用絕大多數的庫,只能使用以下頭文件中的內容:
<float.h> <iso646.h> <limits.h> <stdalign.h> <stdarg.h>
<stdbool.h> <stddef.h> <stdint.h> <stdnoreturn.h>

為什么呢?
因為(執行環境為獨立環境的程序),它的運行不依靠操作系統。而標準庫中的很多庫函數都依賴于操作系統,所以程序不能使用絕大多數的庫。

總結

以上是生活随笔為你收集整理的转换环境与执行环境、宿主环境与独立环境、宿主实现与独立实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。