电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Solaris線程模型詳解

瀏覽:108日期:2022-06-07 11:31:12

計算機中正在執行的程序稱為進程,進程中單一順序的控制流叫做線程,進程是資源管理的最小單位,線程是程序執行的最小單位。在操作系統設計上,從進程演化出線程,最主要的目的就是利用線程共享同一地址空間的特點,更好的支持對稱多處理(SMP)以及減小(進程/線程)上下文切換開銷。

Solaris是Sun公司開發和發布的一種現代操作系統,是UNIX系統的一個重要分支,下面就其內部的線程模型做一些介紹和討論。

Solaris線程模型的設計目標:

主要有四個方面:

①.能夠描述各種情況下的線程間工作機制

②.支持代價盡可能小的線程

③.既支持單CPU實現,又支持多CPU實現

④.保持對現有UNIX版本的兼容性

Solaris線程模型的實現方法:

線程庫的高級內核具有多處理及多線程特性,因此Solaris提供了大量的用戶級線程庫,其使用了一種兩層的線程庫模型:在高層是用戶線程,而底層則是輕量級進程(LWP)。

LWP其實就是內核線程,是Solaris中真正的可調度實體。內核只關心LWP,而不關心用戶線程。

用戶線程由線程庫管理,線程庫支持用戶線程及LWP之間的一到一、多到多、多到一映射,并且用線程庫管理用戶線程與LWP池之間的映射關系及用戶線程的調度。

Solaris有兩種用戶線程: 綁定線程(bound threads)和未綁定線程(unbound threads)。一個綁定線程就是用戶線程與LWP之間的一一映射,一個未綁定線程則沒有一個固定對應的LWP。在一個進程中,線程庫在LWP池上對用戶線程進行調度。其結構圖如下:

對以上兩者進行比較,未綁定進程由線程庫來實現用戶線程獲得LWP的調度,而不需要內核的參與,這種方式的線程上下文切換比較快,并且更節省內核資源,solaris根據一定的策略提供一個LWP池,供上面更多的線程分享。

綁定線程和LWP是一對一關系,因此實時調度性要好,但是由于內核的加入,比較浪費資源。綁定線程比起非綁定線程的開銷要大。因為綁定線程可以改變它所在的LWP的屬性,LWP在綁定線程退出后不會被緩存,在新的綁定線程生成時,操作系統將提供一個新的LWP。僅僅在線程需要只有在所在的LWP內可用的資源時(例如虛擬的定時器或者一個指定的堆棧),或者為了實現實時調度而必須使線程對于內核可見的場合下,才需要使用綁定線程。

Solaris對線程的控制與同步:

內核根據LWP的調度類型和優先級對它們進行調度。進程建立時有一個初始LWP被建立,并且繼承父進程的調度類型和優先級。一般來說,綁定的用戶線程繼承底層的LWP調度類型和優先級,而未綁定的則繼承父進程的調度類型和優先級。

Solaris內核使用一種搶先的基于優先級的調度機制,高優先級的LWP比低優先級的LWP先執行。Solaris線程庫使用優先級對用戶線程在LWP池上進行調度,每次選擇一個LWP執行已經就緒的用戶線程。如果某LWP因無限等待而阻塞,線程庫則將其對應的用戶線程的上下文保存起來,并分派另一個用戶線程到該LWP上執行。線程庫通常建立足夠多的LWP,以保證進程不發生”饑餓”。

線程的同步用于共享數據,轉換和控制線程執行,保證程序安全。Solaris支持4種線程的同步原語,分別是互斥鎖,信號量,多讀進程單寫進程鎖,條件變量。

內核級線程和用戶級線程都具有這些原語操作。一條原語執行時創建一個包含線程信息的數據結構,對每個同步對象只能執行加鎖和解鎖兩項操作,但內核和線程庫沒有提供防死鎖機制。

總結:

Solaris作為多線程,多進程型的操作系統,其關于線程實現機制方面一直是業界領先的,了解solaris的多線程實現機制不但能夠幫助我們充分理解操作系統對多線程的控制原理,而且對多線程程序的編寫技巧的提高也有很大啟發。

相關文章:
主站蜘蛛池模板: hdpe土工膜-防渗膜-复合土工膜-长丝土工布价格-厂家直销「恒阳新材料」-山东恒阳新材料有限公司 ETFE膜结构_PTFE膜结构_空间钢结构_膜结构_张拉膜_浙江萬豪空间结构集团有限公司 | 焊缝跟踪系统_激光位移传感器_激光焊缝跟踪传感器-创想智控 | 衬四氟_衬氟储罐_四氟储罐-无锡市氟瑞特防腐科技有限公司 | 烟台螺纹,烟台H型钢,烟台钢材,烟台角钢-烟台市正丰金属材料有限公司 | 广东恩亿梯电源有限公司【官网】_UPS不间断电源|EPS应急电源|模块化机房|电动汽车充电桩_UPS电源厂家(恩亿梯UPS电源,UPS不间断电源,不间断电源UPS) | 2025福建平潭岛旅游攻略|蓝眼泪,景点,住宿攻略-趣平潭网 | 3d打印服务,3d打印汽车,三维扫描,硅胶复模,手板,快速模具,深圳市精速三维打印科技有限公司 | 扫地车厂家-山西洗地机-太原电动扫地车「大同朔州吕梁晋中忻州长治晋城洗地机」山西锦力环保科技有限公司 | 压力变送器-上海武锐自动化设备有限公司 | 密度电子天平-内校-外校电子天平-沈阳龙腾电子有限公司 | 超声波分散机-均质机-萃取仪-超声波涂料分散设备-杭州精浩 | PCB设计,PCB抄板,电路板打样,PCBA加工-深圳市宏力捷电子有限公司 | 天津热油泵_管道泵_天津高温热油泵-天津市金丰泰机械泵业有限公司【官方网站】 | 滑板场地施工_极限运动场地设计_滑板公园建造_盐城天人极限运动场地建设有限公司 | 杭州厂房降温,车间降温设备,车间通风降温,厂房降温方案,杭州嘉友实业爽风品牌 | 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 - 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 | 济南律师,济南法律咨询,山东法律顾问-山东沃德律师事务所 | 河南中整光饰机械有限公司-抛光机,去毛刺抛光机,精密镜面抛光机,全自动抛光机械设备 | 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 卡诺亚轻高定官网_卧室系统_整家定制_定制家居_高端定制_全屋定制加盟_定制家具加盟_定制衣柜加盟 | 广东恩亿梯电源有限公司【官网】_UPS不间断电源|EPS应急电源|模块化机房|电动汽车充电桩_UPS电源厂家(恩亿梯UPS电源,UPS不间断电源,不间断电源UPS) | 交联度测试仪-湿漏电流测试仪-双85恒温恒湿试验箱-常州市科迈实验仪器有限公司 | 老房子翻新装修,旧房墙面翻新,房屋防水补漏,厨房卫生间改造,室内装潢装修公司 - 一修房屋快修官网 | 智慧水务|智慧供排水利信息化|水厂软硬件系统-上海敢创 | 蜘蛛车-登高车-高空作业平台-高空作业车-曲臂剪叉式升降机租赁-重庆海克斯公司 | 温州富欧金属封头-不锈钢封头厂家 | 沥青车辙成型机-车托式混凝土取芯机-混凝土塑料试模|鑫高仪器 | 耐高温风管_耐高温软管_食品级软管_吸尘管_钢丝软管_卫生级软管_塑料波纹管-东莞市鑫翔宇软管有限公司 | 工业制氮机_psa制氮机厂家-宏骁智能装备科技江苏有限公司 | 杭州月嫂技术培训服务公司-催乳师培训中心报名费用-产后康复师培训机构-杭州优贝姆健康管理有限公司 | 脱硫搅拌器厂家-淄博友胜不锈钢搅拌器厂家| 安徽控制器-合肥船用空调控制器-合肥家电控制器-合肥迅驰电子厂 安徽净化板_合肥岩棉板厂家_玻镁板厂家_安徽科艺美洁净科技有限公司 | 柔软云母板-硬质-水位计云母片组件-首页-武汉长丰云母绝缘材料有限公司 | 医疗仪器模块 健康一体机 多参数监护仪 智慧医疗仪器方案定制 血氧监护 心电监护 -朗锐慧康 | 济南轻型钢结构/济南铁艺护栏/济南铁艺大门-济南燕翔铁艺制品有限公司 | 卡诺亚轻高定官网_卧室系统_整家定制_定制家居_高端定制_全屋定制加盟_定制家具加盟_定制衣柜加盟 | 存包柜厂家_电子存包柜_超市存包柜_超市电子存包柜_自动存包柜-洛阳中星 | 东莞画册设计_logo/vi设计_品牌包装设计 - 华略品牌设计公司 | 大功率金属激光焊接机价格_不锈钢汽车配件|光纤自动激光焊接机设备-东莞市正信激光科技有限公司 定制奶茶纸杯_定制豆浆杯_广东纸杯厂_[绿保佳]一家专业生产纸杯碗的厂家 | 武汉森源蓝天环境科技工程有限公司-为环境污染治理提供协同解决方案 | 新能源汽车电机定转子合装机 - 电机维修设备 - 睿望达 |