精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

計(jì)算機(jī)底層知識(shí)之操作系統(tǒng)

jf_78858299 ? 來源:前端柒八九 ? 作者:前端柒八九 ? 2023-03-31 15:55 ? 次閱讀

操作系統(tǒng)功能的歷史

在計(jì)算機(jī)中尚不存在操作系統(tǒng)的年代,完全沒有任何程序,因此程序員就需要編寫出處理相關(guān)的所有程序。用機(jī)器語言編寫程序,然后再使用開關(guān)將程序輸入,這個(gè)過程非常麻煩。于是,有人開發(fā)出僅具有 「加載」「運(yùn)行功能」「監(jiān)控程序」 ,這就是操作系統(tǒng)的原型。

通過事先啟動(dòng)監(jiān)控程序,程序員就可以根據(jù)需要將各種程序加載到內(nèi)存中運(yùn)行。

圖片

隨著時(shí)代的發(fā)展,人們?cè)诶?「監(jiān)控程序」 編寫程序的過程中,發(fā)現(xiàn)很多程序都有 「共通」 的部分。例如,鍵盤輸入、顯示器輸出文字等。因此,基本的 「輸入輸出」 部分的程序被追加到了監(jiān)控程序中。因此,初期的操作系統(tǒng)就應(yīng)用而生了。

圖片

初期的操作系統(tǒng) = 監(jiān)控程序 + 基本的輸入輸出程序

之后,開始有更多的功能被追加到監(jiān)控程序中。例如,硬件控制程序、語言處理器匯編、編譯、解析)以及各種實(shí)用程序等。從此可知, 「操作系統(tǒng)本身并不是單獨(dú)的程序,而是多個(gè)程序的集合體」

圖片


意識(shí)到操作系統(tǒng)的存在

我們希望制作應(yīng)用的程序員意識(shí)到一點(diǎn),那就是他們制作的不是硬件,而是 「利用操作系統(tǒng)功能的應(yīng)用」

雖然,對(duì)程序員來說,掌握硬件的基本知識(shí)是必需的,不過,在操作系統(tǒng)誕生后,就沒有必要再編寫直接控制硬件的程序了。不過,「要想成為一個(gè)全面的程序員,有一點(diǎn)需要清楚的是,掌握基本的硬件知識(shí),并借助操作系統(tǒng)進(jìn)行抽象化,可以大大提高編程效率。」

?在操作環(huán)境這個(gè)運(yùn)行環(huán)境下,應(yīng)用并不是直接控制硬件,而是通過操作系統(tǒng)來 「間接」 控制硬件。

?

圖片


系統(tǒng)調(diào)用和高級(jí)編程語言的移植性

操作系統(tǒng)的硬件控制功能,通常是通過一些小的 「函數(shù)集合」 的形式來提供的。這些函數(shù)及調(diào)用函數(shù)的行為統(tǒng)稱為系統(tǒng)調(diào)用System Call,也就是應(yīng)用對(duì)操作系統(tǒng)的功能進(jìn)行調(diào)用。

C語言等高級(jí)編程語言并不依存于特定的操作系統(tǒng)。這是因?yàn)闊o論Windows還是Linux都能使用幾乎相同的源代碼。因此, 「高級(jí)編程語言的機(jī)制就是,使用獨(dú)自的函數(shù)名,然后再在編譯時(shí)將其轉(zhuǎn)換成相應(yīng)操作系統(tǒng)的系統(tǒng)調(diào)用」

用高級(jí)編程語言編寫的應(yīng)用在 「編譯后」 ,就轉(zhuǎn)換成了利用系統(tǒng)調(diào)用的 「本地代碼」

圖片


操作系統(tǒng)和高級(jí)編程語言使硬件抽象化

通過使用操作系統(tǒng)提供的 「系統(tǒng)調(diào)用」 ,程序員就沒必要編寫直接控制硬件的程序了。而且,通過使用高級(jí)編程語言,有時(shí)甚至也無需考慮系統(tǒng)調(diào)用的存在。這是因?yàn)?「操作系統(tǒng)和高級(jí)編程語言能夠使硬件抽象化」

我們用C語言編寫一個(gè)往文件中寫入字符串的應(yīng)用。

#include 

void main(){
  //打開文件
  FILE *fp = fopen("MyFile.txt","w");
  
  /寫入文件
  fputs("前端柒八九",fp);
  // 關(guān)閉文件
  fclose(fp);
}
  • fopen()是用來打開文件的函數(shù)
  • fputs()是用來往文件中寫入字符串的函數(shù)
  • fclose()是用來關(guān)閉文件的函數(shù)

在應(yīng)用被編譯運(yùn)行后,MyFile文件中就會(huì)被寫入前端柒八九字符串。

?文件是操作系統(tǒng)對(duì)磁盤媒介空間的抽象化

?

正如前面介紹過,硬件被劃分為了多個(gè)扇區(qū),并以扇區(qū)為單位對(duì)磁盤進(jìn)行讀寫。圖片

變量fp中被賦予的是fopen()函數(shù)的返回值。該值稱為 「文件指針」 。應(yīng)用打開文件后,操作系統(tǒng)就會(huì)自動(dòng)申請(qǐng)分配用來管理文件讀寫的內(nèi)存空間。這個(gè)內(nèi)存空間的地址可以通過fopen()函數(shù)的返回值獲得。用fopen()打開文件后,接下來就是通過指定文件指針來對(duì)文件進(jìn)行操作。


Windows 操作系統(tǒng)的特征

  1. 32/64位操作系統(tǒng)
  2. 通過 「API函數(shù)集」 來提供系統(tǒng)調(diào)用
  3. 提供采用了圖形用戶界面Graphical User Interface的用戶界面
  4. 通過WYSIWYG實(shí)現(xiàn)打印輸出
  5. 提供多任務(wù)功能
  6. 提供網(wǎng)絡(luò)功能及數(shù)據(jù)庫功能
  7. 通過 「即插即用」 實(shí)現(xiàn)設(shè)備驅(qū)動(dòng)的自動(dòng)設(shè)定

我們來挑幾個(gè)我們比較感興趣的來簡單講講。

通過WYSIWYG實(shí)現(xiàn)打印輸出

WYSIWYGWhat You See Is What You Get的縮寫。翻譯成中文就是 「所見即所得」

WYSIWYG指的是顯示器上顯示的內(nèi)容可以直接通過打印機(jī)打印輸出。在Windows中,顯示器和打印機(jī)是被作為同等的圖形輸出設(shè)備處理的,而該功能也就為WYSIWYG的實(shí)現(xiàn)提供了條件。

借助WYSIWYG功能,基本上在同一個(gè)程序中就可以實(shí)現(xiàn)顯示和打印這兩方面的操作了。

提供多任務(wù)功能

? 「多任務(wù)」 指的是同時(shí)運(yùn)行多個(gè)程序的功能。Windows是通過 時(shí)鐘分割」 技術(shù)來實(shí)現(xiàn)多任務(wù)功能的。

?

時(shí)鐘分割指的是在短時(shí)間間隔內(nèi),多個(gè)程序切換運(yùn)行的方式。在用戶看來,就是多個(gè)任務(wù)在同時(shí)運(yùn)行。而Windows會(huì)自動(dòng)切換多個(gè)程序的運(yùn)行。此外,Windows還具有 「以程序中的函數(shù)為單位來進(jìn)行時(shí)鐘分割的多線程功能」

圖片

提供網(wǎng)絡(luò)功能及數(shù)據(jù)庫功能

Windows中,網(wǎng)絡(luò)功能是作為 「標(biāo)準(zhǔn)功能」 提供的。數(shù)據(jù)庫功能有時(shí)也會(huì)在之后進(jìn)行追加。網(wǎng)絡(luò)功能和數(shù)據(jù)庫功能,雖并不是操作系統(tǒng)本身不可欠缺的功能,但因?yàn)樗鼈兒筒僮飨到y(tǒng)很接近,所以被統(tǒng)稱為 「中間件」 而不是應(yīng)用。

?中間件的意思是處于 「操作系統(tǒng)和應(yīng)用的中間」

?

操作系統(tǒng)和中間件合在一起,也稱為**「系統(tǒng)軟件」**

圖片

通過即插即用實(shí)現(xiàn)設(shè)備驅(qū)動(dòng)的自動(dòng)設(shè)定

即插即用Plug-and-Play指的是新的設(shè)備連接(Plug)后立刻就可以使用(Play)的機(jī)制。新的設(shè)備連接到計(jì)算機(jī)后,系統(tǒng)就會(huì)自動(dòng)安裝和設(shè)定用來控制該設(shè)備的 「設(shè)備驅(qū)動(dòng)」 程序。

設(shè)備驅(qū)動(dòng)是操作系統(tǒng)的一部分,提供了同硬件進(jìn)行基本的輸入輸出的功能。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7430

    瀏覽量

    87735
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    950

    瀏覽量

    29768
  • 機(jī)器語言
    +關(guān)注

    關(guān)注

    0

    文章

    35

    瀏覽量

    10747
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    計(jì)算機(jī)操作系統(tǒng)PPT

    計(jì)算機(jī)操作系統(tǒng)PPT操作系統(tǒng)引論(1章)進(jìn)程管理(2-3章)存儲(chǔ)管理(4章)設(shè)備管理(5章)文件管理(6章)操作系統(tǒng)接口(7章)系統(tǒng)安全性(
    發(fā)表于 11-07 11:19

    計(jì)算機(jī)軟件與操作系統(tǒng)

    計(jì)算機(jī)軟件與操作系統(tǒng)  功能強(qiáng)大的計(jì)算機(jī)自從走進(jìn)了人類的生活就發(fā)揮著越來越重要的作用,隨著時(shí)代的發(fā)展,計(jì)算機(jī)已與人們的日常生活息息相關(guān)。不能不說計(jì)算
    發(fā)表于 09-13 10:09

    計(jì)算機(jī)操作系統(tǒng)

    計(jì)算機(jī)操作系統(tǒng)-進(jìn)程(2)進(jìn)程的狀態(tài)與轉(zhuǎn)換
    發(fā)表于 05-25 16:45

    在ARM中計(jì)算機(jī)技術(shù)和知識(shí)的分享

    1.相關(guān)資料的分享,c/c++語言面試寶典,從面試的角度看待編程語言應(yīng)該如何學(xué)習(xí)2.計(jì)算機(jī)基礎(chǔ)和操作系統(tǒng)資料分享,在應(yīng)用的計(jì)算機(jī)底層的時(shí)候必須得掌握的
    發(fā)表于 10-21 14:27

    什么是計(jì)算機(jī)操作系統(tǒng)

    什么是計(jì)算機(jī)操作系統(tǒng)操作系統(tǒng)是一種為應(yīng)用程序提供服務(wù)的系統(tǒng)軟件,是一個(gè)完整的計(jì)算機(jī)系統(tǒng)的有機(jī)組成部分。從層次上來看,
    發(fā)表于 12-14 06:50

    嵌入式系統(tǒng)與通用計(jì)算機(jī)操作系統(tǒng)的區(qū)別是什么

    嵌入式系統(tǒng)與通用計(jì)算機(jī)操作系統(tǒng)的區(qū)別以前僅學(xué)習(xí)并接觸過嵌入式系統(tǒng),通過對(duì)比,可以把以前學(xué)過的知識(shí)對(duì)應(yīng)到計(jì)
    發(fā)表于 12-22 06:35

    計(jì)算機(jī)操作系統(tǒng)課件

    計(jì)算機(jī)操作系統(tǒng)課件內(nèi)容如下第1章  計(jì)算機(jī)操作系統(tǒng)概述.ppt1.1  存儲(chǔ)程序式計(jì)算機(jī)模型1.2 
    發(fā)表于 11-07 09:43 ?0次下載
    <b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>操作系統(tǒng)</b>課件

    2004年計(jì)算機(jī)操作系統(tǒng)試題

    計(jì)算機(jī)專業(yè)計(jì)算機(jī)操作系統(tǒng)試題 2004年1月一、選擇題(選擇一個(gè)正確答案的代號(hào)填入括號(hào)中,共40分)1.操作系統(tǒng)是為了提高計(jì)算機(jī)的C1](
    發(fā)表于 01-07 19:24 ?2次下載

    計(jì)算機(jī)操作系統(tǒng)》課程教學(xué)探討

    計(jì)算機(jī)操作系統(tǒng)課是一門涉及知識(shí)面廣的專業(yè)基礎(chǔ)課程,該課程的教學(xué)一直在計(jì)算機(jī)專業(yè)教學(xué)計(jì)劃中居重要位置.本文在分析了目前國內(nèi)計(jì)算機(jī)
    發(fā)表于 04-18 21:12 ?48次下載

    計(jì)算機(jī)測(cè)控系統(tǒng)操作系統(tǒng)概述集合【labview基礎(chǔ)知識(shí)

    計(jì)算機(jī)測(cè)控系統(tǒng)操作系統(tǒng)概述集合,labview基礎(chǔ)知識(shí)
    發(fā)表于 01-12 11:13 ?19次下載

    計(jì)算機(jī)操作系統(tǒng)原理與設(shè)計(jì)

    計(jì)算機(jī)操作系統(tǒng)原理與設(shè)計(jì)算機(jī)操作系統(tǒng)原理與設(shè)計(jì) 計(jì)算機(jī)操作系統(tǒng)原理與設(shè)計(jì)
    發(fā)表于 06-03 14:30 ?42次下載

    操作系統(tǒng)是什么?計(jì)算機(jī)操作系統(tǒng)的詳細(xì)資料介紹

    操作系統(tǒng)計(jì)算機(jī)學(xué)科的基礎(chǔ)課程,是理解計(jì)算機(jī)運(yùn)行原理的重要基石,學(xué)習(xí)操作系統(tǒng)不僅能夠讓編程人員了解計(jì)算機(jī)運(yùn)行邏輯而且還有助于培養(yǎng)編程“軟實(shí)力
    的頭像 發(fā)表于 02-04 12:24 ?1.7w次閱讀
    <b class='flag-5'>操作系統(tǒng)</b>是什么?<b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>操作系統(tǒng)</b>的詳細(xì)資料介紹

    計(jì)算機(jī)操作系統(tǒng)的幾種分類方式

    操作系統(tǒng)是管理計(jì)算機(jī)硬件與軟件的計(jì)算機(jī)程序,是計(jì)算機(jī)系統(tǒng)的核心,是計(jì)算機(jī)系統(tǒng)中最基礎(chǔ)和最重要的系統(tǒng)
    的頭像 發(fā)表于 03-21 14:58 ?2w次閱讀

    計(jì)算機(jī)操作系統(tǒng)的最基本特征是什么_計(jì)算機(jī)操作系統(tǒng)是什么的接口

    計(jì)算機(jī)操作系統(tǒng)是用戶與計(jì)算機(jī)的接口,在計(jì)算機(jī)中,操作系統(tǒng)是其最基本也是最重要的基礎(chǔ)性系統(tǒng)軟件;
    發(fā)表于 09-03 15:36 ?1.5w次閱讀

    為什么計(jì)算機(jī)需要操作系統(tǒng)

    今天,我們從三個(gè)方面來簡單聊聊為什么計(jì)算機(jī)系統(tǒng)需要操作系統(tǒng)這個(gè)話題。
    的頭像 發(fā)表于 02-03 11:00 ?2296次閱讀