作業系統:管理系統呼叫介面
程序:程序就是執行起來的程式,站在作業系統的角度就是pcb,linux是task_struct結構體
檢視: /proc ps -ef ps aux getpid()
建立: fork--複製
狀態:阻塞 就緒 執行
liunx下的程序狀態:執行 r(task_runing)、可中斷睡眠(s 可隨時被喚醒)、
不可中斷睡眠(d 使用特殊手段喚醒)、停止 t、殭屍 z;死亡和追蹤(不常用)
終止乙個程序命令kill pid;kill -9 pid強制終止
殭屍程序:處於殭屍狀態的程序
危害:資源洩漏
產生:子程序先於父程序退出,作業系統通知父程序,但是父程序沒有管,然而作業系統不敢
擅自釋放子程序的資源(一旦釋放就沒地方儲存退出原因),因此子程序就成了殭屍程序
處理:退出父程序
預防:程序等待
孤兒程序: 父程序先於子程序退出子程序將稱為孤兒程序,孤兒程序的父程序將變為1號init程序
並且孤兒程序退出,不會產生殭屍程序
守護程序/精靈程序:特殊的孤兒程序
程序優先順序: 數字
功能:決定cpu資源的優先分配權
優先順序檢視:ps -l
優先順序無法直接修改,但是可是設定ni的值進而對優先順序做出修改
真正優先順序計算公式 pri=pri+ni
修改命令: nice -n 5 renice
nice取值範圍; -20——19
頁表:記錄虛擬位址與實體地址的對映關係,並且對記憶體進行訪問控制
寫時拷貝技術:---提高建立子程序的效率
分頁式記憶體管理:提高記憶體利用率,記憶體訪問控制
程序排程:cpu排程程序排程的就是pcb
大o(1)排程演算法
殭屍程序相關內容
殭屍程序指的是那些雖然已經終止的程序,但仍然保留一些資訊,等待其父程序為其收屍。如何產生?如果乙個程序在其終止的時候,自己就 所有分配給它的資源,系統就不會產生所謂的殭屍程序了 殭屍程序產生的過程 1.父程序呼叫fork建立子程序後,子程序執行直至其終止,它立即從記憶體中移除,但程序描述符仍然保留在...
ORACLE相關內容
1 em,dbca,netca,netmgr出現亂碼方案 cd oracle home jre lib mv font.properties font.properties.bak mv font.properties.zh font.properties em,dbca,netca,netmgr詳...
JVM相關內容
本地 native code 每個因素對記憶體占用的影響又會隨著應用程式 執行環境和系統平台的不同而變化,那怎樣計算總的記憶體佔用量?是的,想得到乙個準確的數字不是那麼容易,因為 你很難控制本地 native 部分。你能控制的部分只有堆大小 xmx,類占用的記憶體 xx maxpermsize,還有...