#初探操作系統
[TOC]
##古書都是有用的
我個人特別喜歡哲學《周易》,《連三》,《倫理》等。因為它們中的哲理能夠用在計算機領域的方方面面,比如:
###**道可道,非常道。名可名,非常名。**
道理是無法講出來的,講出來的那就已經不是道理了。前天我去補考《計算機組成原理》,卷子上有這么一個問題:“簡述計算機的層次結構,并說明特點。”我看到的第一反應是操作系統的這個圖:

(網上有一張圓形的圖,那個比較形象,可以上網找找,我想到的是那個圓形的,內容和這個類似)
然后覺得不對,畢竟是“計算機組成” 然后我又想到了這個圖:
3層“谷堆” 進程 文件 存儲
然后我又想到了存儲結構。這個圖:
分諾依曼結構
直到我剛剛百度到的這張圖:

其實我心中早就有了答案!其實就是osi/rm七層模型在計算機內部的表示。如圖:

但是!廢話說了這么多,例子也都是圖,最終的結果是要圖轉化成文字信息去回答一個簡答題。。。或許,我估計只能得到“0”分。。
**(當你真正學會一個東西的時候,那么它絕對是難以名狀的!)**
###**有無相生,難易相成,長短相形,高下相傾,音聲相和,前后相隨。**
計算機內部都是相對的,尤其是硬件和軟件,相互制約,相互促進,相輔相成。。就如前面6句話。。難以名狀!
###**一花一草一世界。(佛)**
所有事物**自成世界**,即介觀(物理概念)。編程語言能夠看成一個自定義的世界。操作系統能看成一個有待完備的世界。一個細胞也能看成一個完備世界。.........
....
**唉?!**
**“界”這個字像不像一個“立體”的人?!之所以用田當頭,是不是覺得知識儲備就像一個個抽屜?!而人的身體就像一個個獨立的世界?!(《黃帝內經》里應該有這個概念,應該下去查查資料。介百科上說就是指人而且是“甲骨文”中指人,那為啥界不用“田人”而用“田介”?,甲骨文中應該暗示了什么,嘿嘿)**
最**核心**概念的引出:
##學習操作系統的三大基本概念
一、為什么所有關于操作系統的專業書最開始都喜歡畫結構、分層次、講歷史?
答:因為現在的操作系統不完備,還處在發展階段。因此,學習它時,人們就必須按照發展史講起。
**那么,如果當操作系統完備后,該如何與后輩闡述操作系統的概念?**
###太極圖

(這是我最喜歡的一張圖,也是學習計算機必備的一張圖。我把它放在這里,供大家思考。)
###**它是完備的圓,是無法分割的。**
####我們可以把一個圓分成兩部分,并且分別上色,但它始終是一個圓。
二進制轉換:原碼和反碼。它最終所表示的值是同一個,即“真值”。只是“看”的角度,分成了計算機和人。
計算機組成:硬件和軟件。他們是一個整體,光有軟件沒有硬件,只能看成有靈魂沒軀殼。但光有硬件沒有軟件,也只能把它看成是一個沒有靈魂的軀殼。 同一臺計算機。
邏輯判斷: 真和假。回答同一個問題。
.......
**太極圖說:同一個“圓”,不同的夢想。**
###**它就像一個生命體。**
學習操作系統的人應該都知道一句話:“理解了進程,就理解了操作系統”。那么什么是進程?
我們用書上的概念引出:
定義:進程是進程實體的運行過程,是系統進行資源分配和調度的一個獨立單位。
**1、進程是程序的一次執行。**
**2、進程是一個“程序”及“其數據”在處理機上“順序執行”時所發生的活動。**
**3、進程是具有獨立功能的程序在一個數據集合上運行的過程,它是系統進行資源分配和調度的一個獨立單位。**
可以說,理解了上面三點,就理解了進程。那么話說回來,什么是進程或怎樣去理解上面三句話?
我想沒有一個人能準確地說出個所以然來,是因為進程的定義和生命的定義是可以畫“==”的。
為什么呢?
我們先來定義一下什么是生命:“alive”;活著的,活躍的。
如果我說:
一個生命體的數據、數據特征、構造3者是隨著時間**動態變化**的,那么是不是也就表明,這個生命是活著的!
換句話來說:
生命是一個生命體及其特征數據,在生命體構造中按照時間順序執行時所發生的**動態變化**(活動)。
**噠噠!**是不是和上面的第二點不謀而合了?
(數據、數據特征、構造3者指心跳頻率、呼吸速率...;心臟大小、肺活量...;身份證號、性別、年齡...;這3種不同類型數據需要3種類型的存儲空間,詳情請看——程序如何成為進程)
人類無法把一個時時刻刻在變化的生命數據記錄在紙上,同樣的也無法把一個“正在進行的程序”(進程)的動態數據記錄出來。唯一能做的,就是寫一個數據塊兒(PCB)來描述一下“局部”。(詳情請看——萊昂氏unix源代碼解讀之PCB)
###**它體內的各個器官都是相互獨立,但又相互聯系的。**
(我不知道大家原來是如何看待進程的,至少經過我上面的“坑蒙拐騙”。大家肯定覺得自己和我比就是一個菜鳥,覺得差距還好大——其實我就是自吹一下,沒那么夸張。如果把進程看成一個身體器官,就很好理解了。PCB中的各個字段我也就不說了,具體技術問題另說——深究操作系統。再說,現在全寫完以后就沒寫的了。再說,我也一天寫不完。再說,哪那么多說的。。(m3m)。。)
本人男生一枚,對異性肯定感興趣。那我們就拿異性舉例子。
女生上廁所問題。。。俗稱:“搶坑位”。
題目是這樣:
先有一個班的女學生5位、這個班的女班主任一枚、路人女一位。廁所3個坑。。大家想象那個場景具體場景我說了算,哈哈。如下:
現在來了3個女學生,她們依次進入坑位,進去后會上鎖。
接著,又來了2位女學生和一位路人女。依次排隊。順序為:女學生、路人女、女學生。
坑位中的一位女學生化妝完畢出來了,排最前面的女學生該進了。
這時,突然班主任來了。。會發生什么情況?
1、班主任、女學生、路人女、女學生。最前面的女學生會讓老師先上。
2、女學生、路人女、女學生、班主任。老師排最后面。
3、女學生、路人女、班主任、女學生。(學生讓老師先上,但是路人女不同意)
我們以路人的角度看:1、那個中年婦女憑什么先上?2、很可能她們認識。但我不認識她,她就得在我后面。
我們以學生的角度看:1、老師怎么了,老師也得排隊!2、老師應該先上。
學生和老師,這種關系是只有她們“內部”才能識別的。在計算機里,只有cpu能識別的進程id 我們稱作Pid。
而路人和老師,他們沒有特定的識別單位,只能通過別的來識別。在計算機里,供用戶識別的進程id我們稱作Uid。
而掌管她們排隊的算法,就是進程調度算法。
而標記廁所現在還有沒有坑位。在計算機中,是用信號量來標示的。(詳情請看——萊昂氏unix源代碼解讀之PCB)
說了半天,大家可能會發現和這個標題一點兒關系也沒有,請看:
心臟是如何輸血的?假如:現在大腦,手,肺,胃4個器官都供血不足,心臟會優先給誰輸血?
答案只能是:從我的(用戶)角度看,心臟會優先給大腦。因為,人活著,就是大腦在動。
但是,換個角度想,不給肺供血,沒氧氣,大腦光有血沒氧,不一樣的死?
所以說,心臟(cpu)會有它自己的優先級判斷,而且人們都看不出來,因為我們都不是心臟。
為什么我的標題這么寫,我給大家拋個引子——當你玩兒游戲的時候是不是鼠標鍵盤顯示器等都要用到,那么游戲是不是以進程的形式存在于計算機中?當我把心臟從身體里拉扯出來的時候,它上面的血管又連接的是哪里?
##科學本身就是仿生的一個過程,學習科學千萬不能只學表面
如果看完這篇文字,腦海中有一個說不出的感覺,我寫作的目的也就達到了。
謝謝觀賞
作者:蝌蚪明
(轉載望寫明出處、謝謝)
- 2023-4-8__成長之路
- 技術雜談
- 程序員境界
- 走進猿類
- 做一個程序員
- 什么是猿類
- 愛亂吹的猿
- 業余生活
- 我的書架
- 高效程序員的45個習慣
- 敏捷—高效軟件開發之道
- 態度決定一切
- 學無止盡
- 交付用戶想要的軟件
- 敏捷反饋
- 敏捷編碼
- 敏捷調試
- 藝術人生
- 摘自藝術的境界
- 如何欣賞畫
- 《的》
- 我的文檔
- 小白學習前那些說不完的事
- 計算機語言都一樣
- 嘗試理解他人代碼
- 做為旁觀者的思考
- 怎樣才算懂計算機
- 工欲善其事,必先利其器
- 教案日志
- 十天學電腦
- 一,認識計算機
- 二、認識編程語言
- 三、認識程序內涵
- 四,認識數據結構
- 五、認識電腦系統
- 六、認識通信原理
- 七、郵箱管理
- 八、重新審視電腦
- 九、理解終生學習
- 十、感悟三千世界
- c語言
- C語言——我覺得好簡單
- c學好不怕沒飯碗—2014.7.21
- C語言——我想的有點兒簡單
- 或多或少的c語言知識
- c語言初探篇
- 初探c語言底層
- 初探整型和浮點型
- 初探二進制數---原反補移
- 初探有無符號
- 初探c是如何跑起來的
- 初探指針
- 初探數組
- 初探順序表
- 初探棧,隊列
- 初探c語言編程
- c語言進階篇
- c語言自身的那些事
- 結構詳解
- c語言大成篇
- 人類思維——模式匹配
- 論c語言面試
- 數據結構
- 核心概念,沒有之一順序表
- 線性表代碼實現
- Sq_list
- 不存在的鏈表
- 只是一種思想——棧
- 只是一種思想——隊列
- 不存在的樹
- 只是一種思想——二分法
- 不存在的圖
- 算法原理
- 傅里葉變換
- 算法導論
- 算法導論——c語言實現
- 算法導論——java實現
- 組成原理
- 操作系統
- 初探操作系統
- 深究操作系統
- 操作系統如何跑起來
- 進程就像細胞
- 系統就像生命
- 進程樹pstree
- 進程
- 進程何時更名為生命
- 初探進程映像
- 程序如何成為進程映像
- PCB
- PCB解讀之——信號量(p_sig)
- 進程同步
- 進程通信
- 進程調度
- 用戶
- PPDA
- 存儲系統
- I/O系統
- 網絡原理
- 通信簡史
- 通信是網絡基礎
- 趣談網絡
- 自我介紹
- 快遞公司
- 小D的自述
- 網絡架構
- OSI/RM
- 應用層
- 表示層
- 會話層
- 傳輸層
- 網絡層
- 數據鏈路層
- 物理層
- TCP/IP四層模型
- 五層模型
- 網絡劃分
- IP史
- 信息安全
- 社會工程學
- 信息收集
- 誘導
- 偽裝
- 如何成為任何人
- 社會心理學
- 思維模式
- 說服的力量
- 代碼審計
- 災難恢復
- 安全注入
- 網絡工程
- 802.11
- CCNA
- CWNA
- 社會工程
- 社會心理
- 信息誘導
- 身份偽裝
- 系統框架
- web前端框架
- smarty框架
- bootstrap框架
- thinkphp框架
- zend框架
- yii框架
- ci框架
- 網站開發
- 五大難題
- 網站工作原理
- 數據庫原理
- 服務器原理
- 前端開發
- 前端技能基礎
- html
- css
- javascript
- 瀏覽器兼容
- 前端總結
- 后臺開發
- 或多或少的JS
- js初探篇
- 理解Javascript
- JS繼承
- 數組
- 操作方法
- DOM事件
- 數據傳輸
- JS面試題
- 數據對象
- 學生管理系統
- 學生管理首頁
- 粗略學了一遍后的總結
- 零碎知識
- js初探篇第二版
- javascript構成
- 基本類型
- 基本語句與判斷類型
- 基本對象與操作函數
- 基本判斷與甄別數據
- 內置對象與操作函數
- 對象認識與深淺復制
- DOM級別與BOM
- 嚴格模式與混雜模式
- ES5和ES6
- js進階篇
- 上傳圖片
- js實戰篇
- 或多或少的PHP
- 詳解url結構
- html基礎
- html初識
- html-組成頁面的基礎標簽
- ie兼容
- 教學方法
- 論php——編程思想
- 論php——底層實現
- 中華國學
- 易經
- 黃帝內經
- 山海經
- 道德經
- 騙經
- 中華哲學
- 一花一世界
- 道可道非常道
- 一瞬
- 宇宙
- 心得體會
- 電腦叫智能生命體更準確
- 計算機不是漢語模式
- 瑣事日記
- 成長與人性
- 祝單身狗快樂
- 人其實過的很單薄
- 都怪自己不夠優秀
- 那是幾個人的世界
- 認清世界,認清自己
- 陪伴繁華逝去的平凡
- 俯拾仰取
- 技術手冊
- 網站開發
- 準備工作
- firewalld
- mysql
- redis
- 開發流程
- 整體配置
- 環境配置
- tomcat配置
- 數字證書配置
- 項目配置
- 數據設計
- 用戶管理
- 整站設計
- user
- user_group
- user_role
- 服務端
- 了解學習
- quartz
- HelloWorld
- HelloJob
- HelloQuartz
- HelloScheduler
- Job
- JobDataMap
- Trigger
- Scheduler
- properties
- spring
- AOP
- 使用
- svnkit
- svn init
- FSFS
- server
- Java
- 測試
- 任務調度
- 網站架構
- 網站前端
- pc端
- 移動端
- native
- ios
- android
- ipad
- hybrid
- 技術日志
- 2018-9-26
- 2018-11-26
- 資源收集
- UED資源
- 技術架構
- 云平臺
- 工作方面
- 實習工作經驗
- 草稿1
- 草稿2
- 草稿3
- 草稿4
- 草稿5
- 草稿6
- 草稿7
- 大學總結
- 面經
- 一、職能定位
- 細節
- 前端
- 工作總結
- 簡歷
- 職業規劃
- 一年規劃
- 整理歸檔
- 2015/11/10以前
- 2015/11/10
- 2015/11/11
- 2015/11/12
- 2015/11/13
- 2015/11/14
- 2015/11/15與16
- 2015/11/17
- 2015/11/18
- 2015/11/19與20
- 2015/11/21
- 2015/11/22
- 2015/11/23
- 2015/11/24
- 2015/11/25
- 2015/11/26
- 2015/11/27
- 2015/11/28
- 2015/11/29
- 2015/11/30-12/6
- 2015/12/7-2016/4/18
- 2016/4/19
- 2016/4/20~2017/6/27
- 2017/6/28-2017/7/4
- 2017/7/5-2018/1/11
- 2018/1/12
- 2018/1/13-2018/4/19
- 2018/4/20
- 2018/4/21-2018/5/10
- 2018/5/11
- 2018/5/12-2018/5/16
- 2018/5/17-2018/5/30
- 2018/5/30-2018/10/15
- 2018/10/15-2018/10/18
- 2018/10/19-2018/11/17
- 2018/11/17-2018/12/31
- 結束----------------開始
- 2019/2/18
- 2020/7/30
- 2020/9/5
- 2021/5/6
- 回收站
- 以前文件
- 2015-10-17__成長之路
- 2018-10-15__成長之路
- 2020-3-29__成長之路
- 畢業三年總結
- 浙大之旅
- 2020
- 英語
- 基礎3000單詞
- 第一周
- 百詞斬__126
- 百詞斬__126翻譯
- 百詞斬__252
- 百詞斬_252翻譯
- 百詞斬__392
- 百詞斬__532
- 百詞斬__672
- 第二周
- 百詞斬__812
- 聽力
- 新東方演講稿
- 庫克杜克大學演講全文版
- 庫克杜克大學演講演講英文對照版