關於線程、進程、使用者態、核心態的不嚴謹體會

來源:互聯網
上載者:User

1.進程對象,維護一個虛擬記憶體到實體記憶體的映射表,以便達到不同進程對相同虛擬記憶體的操作映射到對不同實體記憶體的操作。
2.線程對象,維護兩套棧(核心態,使用者態),以便不同線程的PUSH,POP堆棧操作,針對各自的虛擬記憶體。至於兩套棧,是為了使用者態和核心態切換時使用的,如系統調用。

3.使用者態與核心態:使用者態的線程只能訪問使用者態的記憶體空間,要想訪問核心態空間,必鬚髮生切換;
而核心態的線程,不僅可以訪問核心態空間,也可以訪問使用者態空間,所以可以直接讀寫使用者態空間的資料或執行使用者態空間的函數,而不需要發生狀態切換。

Windows32GUI編程中的WndProc()就是作為回呼函數,是可以被核心態線程調用(處理SendMessage())的,也就是說位於使用者空間的函數運行在了核心態。
一個線程處於哪種態,不在於執行的指令函數位於哪個空間,而在於特權寄存器是否被設定。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.