㈠ 在引入線程的操作系統中,資源分配和調度的基本單位是什麼進程還是線程為什麼
在引入線程的操作系統中,資源分配和調度的基本單位是進程。
進程表示單個運行活動集的計算機程序,是系統的資源分配和調度的基本單元,是操作系統結構的基礎。
在早期面向進程的計算機結構中,過程是程序的基本執行實體,在面向線程設計的現代計算機結構中,進程是線程的容器。程序是對指令、數據及其組織形式的描述,流程是程序的實體。
操作系統引入進程的概念的原因:從理論角度看,是對正在運行的程序過程的抽象。從實現角度看,是一種數據結構,目的在於清晰地刻畫動態系統的內在規律,有效管理和調度進入計算機系統主存儲器運行的程序。
(1)線程的資源是哪裡來的擴展閱讀:
線程的實體包括程序、數據和TCB。線程是動態概念,它的動態特性由線程式控制制塊TCB(Thread Control Block)描述。TCB包括以下信息:
1、線程狀態。
2、當線程不運行時,被保存的現場資源。
3、一組執行堆棧。
4、存放每個線程的局部變數主存區。
5、訪問同一個進程中的主存和其它資源。
用於指示被執行指令序列的程序計數器、保留局部變數、少數狀態參數和返回地址等的一組寄存器和堆棧。
參考資料來源:網路-進程
㈡ 多線程運行時,各線程是如何佔用CPU資源的
意思是說JAVA的每個線程只能由一個CPU為它提供服務,無法實現多個CPU同時為一個線程提供計算服務,如果一個線程佔用CPU資源非常多,即使它耗盡一個CPU的所有資源時,其他空閑CPU也不會為它分擔任何負荷