閱讀時間:2015年10月19日20:15/21:27
閱讀技巧:采用鉛筆標注的方式蜓陌,把不明白的標注,查百度理解
閱讀筆記:今天閱讀量比較少點,因為比較難懂一點,不過百度以后還是懂得了财剖。RUBY是一種編程語言,在unix中需要安裝這樣的解釋器癌淮,才可以被機器所解釋躺坟,因此,有好多語言指令都需要被解讀才可以乳蓄,這就需要設置函數解決了瞳氓。文中有好多是這種意思,只說了一個名稱栓袖,這個名稱想當于一種解釋功能的代名詞。只需要理解就可以店诗,在進程中裹刮,近親都是可以繁衍生的。這就需要用到(forking)是unix編程中最強大的概念之一庞瘸。fork系統(tǒng)調用捧弃,允許運行中的進程以編程的形式創(chuàng)建新的進程。這個進程和原始進程一模一樣擦囊。到目前為止违霞,我們都是通過在終端中運行的方式來創(chuàng)建新的進程。我們也提到底層操作系統(tǒng)調用fork的工作原理瞬场。在衍生時买鸽,調用fork的進程被稱為“父進程''新創(chuàng)建的進程被稱為“子進程''在fork調用時,子進程從父進程處繼承了所有的文件描述符贯被,也獲得了父進程所有的文件描述符的編號眼五。倆個進程就可以共享打開的文件、套接字彤灶。子進程可以隨意更改其內存內容的副本看幼,而不會對父進程造成任何影響。在下面幌陕,我們將討論“寫時復制''以及該技術在進程衍生時如何影響內存內容诵姜,正如我們在講解進程衍生中所提到那樣,fork創(chuàng)建了一個和父進程一模一樣的子進程搏熄。它包含了父進程在內存中的一切內容棚唆。實實在在地復制所有數據所產生的系統(tǒng)開銷不容小覷暇赤,因此需要采用寫時復制CoW的方法來克服這個問題。它將實際的內存復制操作推遲到了真正需要寫入的時候瑟俭,所以說父進程和子進程實際上是在共享內存中的數據翎卓,直到它們其中的某一個需要對數據進行修改,屆時才會進行內存復制使得倆個進程保持適當的隔離摆寄。這是進程可衍生的概念失暴,和自己的大概理解,今天用電腦試著輸入了一些相關的代碼指令感覺上還是有些代碼和自己的理解不一樣微饥。所學到的知識需要具體實施逗扒。
閱讀心得:計算機操作系統(tǒng)是一個龐大的體系結構,需要一步一步了解欠橘,不可狼吞虎咽般的學習矩肩,需要理論與實際相結合的手段來學習。