国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

多線程編程之:Linux線程概述

發(fā)布時(shí)間:2015-11-12 11:13    發(fā)布者:designapp
關(guān)鍵詞: Linux , 多線程 , 內(nèi)核
  9.1 Linux線程概述
  9.1.1 線程概述
  前面已經(jīng)提到,進(jìn)程是系統(tǒng)中程序執(zhí)行和資源分配的基本單位。每個(gè)進(jìn)程都擁有自己的數(shù)據(jù)段、代碼段和堆棧段,這就造成了進(jìn)程在進(jìn)行切換等操作時(shí)都需要有比較復(fù)雜的上下文切換等動(dòng)作。為了進(jìn)一步減少處理機(jī)的空轉(zhuǎn)時(shí)間,支持多處理器以及減少上下文切換開(kāi)銷(xiāo),進(jìn)程在演化中出現(xiàn)了另一個(gè)概念——線程。它是進(jìn)程內(nèi)獨(dú)立的一條運(yùn)行路線,處理器調(diào)度的最小單元,也可以稱為輕量級(jí)進(jìn)程。線程可以對(duì)進(jìn)程的內(nèi)存空間和資源進(jìn)行訪問(wèn),并與同一進(jìn)程中的其他線程共享。因此,線程的上下文切換的開(kāi)銷(xiāo)比創(chuàng)建進(jìn)程小很多。
  同進(jìn)程一樣,線程也將相關(guān)的執(zhí)行狀態(tài)和存儲(chǔ)變量放在線程控制表內(nèi)。一個(gè)進(jìn)程可以有多個(gè)線程,也就是有多個(gè)線程控制表及堆棧寄存器,但卻共享一個(gè)用戶地址空間。要注意的是,由于線程共享了進(jìn)程的資源和地址空間,因此,任何線程對(duì)系統(tǒng)資源的操作都會(huì)給其他線程帶來(lái)影響。由此可知,多線程中的同步是非常重要的問(wèn)題。在多線程系統(tǒng)中,進(jìn)程與進(jìn)程的關(guān)系如圖9.1所示。
  


  圖9.1 進(jìn)程與線程關(guān)系
  9.1.2 線程機(jī)制的分類和特性
  線程按照其調(diào)度者可以分為用戶級(jí)線程和核心級(jí)線程兩種。
  (1)用戶級(jí)線程。
  用戶級(jí)線程主要解決的是上下文切換的問(wèn)題,它的調(diào)度算法和調(diào)度過(guò)程全部由用戶自行選擇決定,在運(yùn)行時(shí)不需要特定的內(nèi)核支持。在這里,操作系統(tǒng)往往會(huì)提供一個(gè)用戶空間的線程庫(kù),該線程庫(kù)提供了線程的創(chuàng)建、調(diào)度和撤銷(xiāo)等功能,而內(nèi)核仍然僅對(duì)進(jìn)程進(jìn)行管理。如果一個(gè)進(jìn)程中的某一個(gè)線程調(diào)用了一個(gè)阻塞的系統(tǒng)調(diào)用函數(shù),那么該進(jìn)程包括該進(jìn)程中的其他所有線程也同時(shí)被阻塞。這種用戶級(jí)線程的主要缺點(diǎn)是在一個(gè)進(jìn)程中的多個(gè)線程的調(diào)度中無(wú)法發(fā)揮多處理器的優(yōu)勢(shì)。
  (2)輕量級(jí)進(jìn)程。
  輕量級(jí)進(jìn)程是內(nèi)核支持的用戶線程,是內(nèi)核線程的一種抽象對(duì)象。每個(gè)線程擁有一個(gè)或多個(gè)輕量級(jí)線程,而每個(gè)輕量級(jí)線程分別被綁定在一個(gè)內(nèi)核線程上。
  (3)內(nèi)核線程。
  這種線程允許不同進(jìn)程中的線程按照同一相對(duì)優(yōu)先調(diào)度方法進(jìn)行調(diào)度,這樣就可以發(fā)揮多處理器的并發(fā)優(yōu)勢(shì)。
  現(xiàn)在大多數(shù)系統(tǒng)都采用用戶級(jí)線程與核心級(jí)線程并存的方法。一個(gè)用戶級(jí)線程可以對(duì)應(yīng)一個(gè)或幾個(gè)核心級(jí)線程,也就是“一對(duì)一”或“多對(duì)一”模型。這樣既可滿足多處理機(jī)系統(tǒng)的需要,也可以最大限度地減少調(diào)度開(kāi)銷(xiāo)。
  使用線程機(jī)制大大加快上下文切換速度而且節(jié)省很多資源。但是因?yàn)樵谟脩魬B(tài)和內(nèi)核態(tài)均要實(shí)現(xiàn)調(diào)度管理,所以會(huì)增加實(shí)現(xiàn)的復(fù)雜度和引起優(yōu)先級(jí)翻轉(zhuǎn)的可能性。一個(gè)多線程程序的同步設(shè)計(jì)與調(diào)試也會(huì)增加程序?qū)崿F(xiàn)的難度。
                               
               
本文地址:http://www.qingdxww.cn/thread-156226-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 基于CEC1712實(shí)現(xiàn)的處理器SPI FLASH固件安全彈性方案培訓(xùn)教程
  • 了解一下Microchip強(qiáng)大的PIC18-Q24 MCU系列
  • 無(wú)線充電基礎(chǔ)知識(shí)及應(yīng)用培訓(xùn)教程2
  • 無(wú)線充電基礎(chǔ)知識(shí)及應(yīng)用培訓(xùn)教程3
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 91香蕉视频在线 | 香蕉视频地址 | 日韩中文字幕精品视频在线 | 天堂网www在线观看 天堂网www在线 | 欧美成人精品第一区二区三区 | 久久久久国产精品免费免费 | 久久精品国产曰本波多野结衣 | 欧美有码在线观看 | 狠狠干激情 | 青青青国产免费手机视频在线观看 | 精品免费福利视频 | 亚洲综合激情网 | 91大神大战丝袜美女在线观看 | 天天噜日日噜夜夜噜 | 日本在线观看免费观看完整版 | 九九久久精品国产免费看小说 | 九九免费精品视频在这里 | 日韩男人天堂 | 天天影视综合网色综合国产 | 欧美一区二区三区视频 | 亚洲福利国产精品17p | 久久精品99无色码中文字幕 | 成人窝窝午夜看片 | 免费羞羞网站视频 | 向日葵在线观看视频免费2019 | 免费在线视频a | 最新自拍偷拍 | 亚洲爱爱视频 | 欧美亚洲日本国产综合网 | 手机看黄av免费网址 | 日韩一区二区在线播放 | 精品一久久香蕉国产线看观看下 | 亚洲youjizz| 狼久久 | 色综合欧美色综合七久久 | 99久久精品费精品国产一区二区 | 男人的天堂天堂网 | 国产不卡毛片 | 鸥美性生交xxxxx久久久 | 日韩欧美1区 | 日本在线高清不卡 |