【产业人才需求研究如何精准开展】产业人才需求是产教深度融合的内核,是职业教育人才培养的根本依据,是吸引企业参与职业教育办学的根本动力。2022年12月中共中央办公厅、国务院办公厅印发《关于深化现代职业教育体系建设改革的意见》,提出“搭建人才供需信息平台,推行行业规划和人才需求发布制度”的建设要求。今年4月教育部办公厅发布《关于开展市域产教联合体建设的通知》,进一步明确搭建联合体人才供需信息平台的要求。产业发展和国家政策都在迫切要求依托专业力量开展产业人才需求研究,科学引导职业教育供给侧改革,切实提升职业教育适应性。
供需不匹配是制约职教发展一大痛点
科学技术的发展带来产业与职业岗位的持续变革,引发人才需求的持续变化。唯有及时研究产业和职业发展趋势,分析其对人才规模、层次、类型、能力等方面的需求,才能准确引导职业教育人才供给规模、结构与质量适应现在及未来产业发展的客观要求,高质量推动职业教育供给侧结构性改革。将产业人才需求调研作为确定职业教育规模、专业与课程的基础性和前提性工作,已成为绝大多数职业教育发达国家的共识和普遍做法。
职业院校人才培养与产业需求不匹配是当前职业教育发展中的突出问题,也是制约职业教育发展的一大痛点。部分业务主管部门、省市政府、行业组织、职业院校、职业教育行业教学指导委员会和咨询企业等机构与组织已经在开展产业人才需求调研并发布相关报告,但也存在普遍性问题:第一,在组织性上,主要表现在主管部门、行业、行指委、院校多头开展调研,缺乏统一协调机制,企业数据反复采集,信息碎片化、孤岛化问题突出,分析报告权威性欠缺;第二,在科学性上,主要表现为需求指标确定随意、数据来源不明、样本量偏少、抽样随机、数据分析黑箱、分析结论主观等,研究报告科学性不高;第三,在指导性上,主要表现在需求与供给“两张皮”,需求分析结论对职业教育供给侧结构性改革缺乏科学、持续引导等。
究其原因,产业人才需求研究是劳动经济学的重要分支,也是职业教育研究的重要领域,是一个专业性、科学性、系统性要求非常高的研究领域,而目前国内开展的大部分产业人才需求调研缺乏专业理论、方法和团队支撑。一是我国产业人才需求分析相关理论研究,尤其是同时考虑需求分析与职业教育供给的相关理论研究基础较为薄弱;二是企业需求数据采集困难,对采集哪些数据、如何采集数据缺乏方法研究与机制设计;三是现有大多数机构不具备科学开展产业人才需求研究的专业能力与资源调配能力。
产业人才需求研究的关键与借鉴
研究表明,职业教育对经济社会贡献度大的国家和地区,政府均设立专门机构,研究产业人才需求变化情况,定期发布需求数据。各个国家和地区采取的策略虽有不同,但基本是围绕“谁研究”“研究什么”“如何研究”三个问题展开。这也是我国开展产业人才需求研究的三个关键问题。
问题一:谁研究,即产业人才需求研究主导模式。
不同国家和地区主导产业人才需求研究与信息发布的机构不同,主要分为三类:劳动部门主导、教育部门主导和产业主管部门主导。
劳动部门主导模式的典型案例是美国。1998年,美国劳工部就业与培训管理局开发并向公众免费开放“职业信息网络”(O*NET),涵盖近千种职业的供需实时信息,在学校与岗位、供给与需求之间架设了实时信息联通通道。
教育部门主导模式的典型案例是德国。德国依托联邦职业教育研究所(BIBB)和雇主协会,基于企业人才需求与职业要求,每年开展教育职业目录的开发与更新工作,已形成了完善的标准与程序,保证职业教育供给与需求的对接。
产业主管部门主导模式的典型案例是中国台湾地区。由台湾发展委员会整合经济、交通等产业主管部门,开展智能制造、人工智能等重点产业人才需求调查与预测,基于产业人才供需信息,制定人才发展战略,相关供需报告定期发布在产业人力供需资讯网站上。
不同机构主导产业人才需求研究的出发点、侧重点和信息特征存在差异。劳动部门主导模式以汇集分析职业信息为出发点,侧重职业特征与职业变化趋势分析,信息量最丰富且标准化程度高;教育部门主导模式以供给如何匹配需求为出发点,侧重研究产业和职业变化对教育产生的影响,对教育供给指导性更强,企业需求信息资源主要来自雇主协会,更关注信息深度挖掘;产业主管部门主导模式以服务产业发展规划为出发点,侧重产业未来变化对人才的需求,信息前瞻性更强。我国开展产业人才需求研究必须统合协调产业主管部门、教育部门和人社部门的需求与资源,借鉴成功经验进行制度框架的顶层设计。
问题二:研究什么,即产业人才需求分析框架。
产业人才需求分析框架需要确定分析对象和分析内容两个层面的问题。
分析对象即确定面向哪些产业开展人才需求分析,美国O*NET涉及的面最广,覆盖了绝大多数行业与职业;中国台湾地区则选择新兴产业和支柱产业进行分析。我国在推进产业人才需求研究时不宜全面开展,应选择战略重点产业先行先试,成熟后再考虑逐步扩展到更大范围。
产业人才需求分析内容框架通常包含4个部分的内容:产业发展与变化趋势、产业人才需求量化分析、产业人才需求质性分析、供给建议。美国O*NET的内容框架涵盖面最广,分析内容细致,包括围绕职业分析职业要求、劳动力市场特征、岗位信息;围绕员工的特质、能力与经验要求。我国确立产业人才需求分析内容框架时需要立足国情、产业实际和职业教育供给需要,科学确定分析内容指标体系。
问题三:如何研究,即产业人才需求数据来源与研究方法。
产业人才需求数据来源主要包括:政府统计数据、通过大数据技术手段抓取的网络招聘信息数据和面向雇主和雇员发放问卷获取的调研数据等。
获取数据的方法包括传统的问卷调查和新兴的大数据分析。问卷调查主要用于收集当前和未来短期内的信息,对调研工具设计、实地调查、数据清理等技术要求高,时间、人力和物力投入成本均比较大。大数据分析主要采用网络爬虫等技术,提供相对实时的技术变化和技能需求信息,对搜索算法、技术技能的编码分类等要求较高。
统计数据、问卷数据和招聘数据只能呈现过去和当下的需求,还需要建立科学的人才预测模型,目前常用预测模型包括灰色预测模型、组合预测模型和BP神经网络模型等。不论是数据来源渠道、数据获取方法和预测模型设计都需要专业理论与专业方法的有效支撑。
立足省域依托大数据搭建研究平台
立足省市建立高质量供需对接机制,建立专业机构系统分析和产业人才需求变化追踪,建立区域产业人才供需信息发布平台,是提升职业教育适应性的可行之路。
第一,以各省份大数据局建设为契机,开发人才供需大数据平台,协同并整合发改委、工信部门、国资委等产业主管部门,以及人社部门、教育部门、统计部门等的资源与数据,建立完整、准确、及时的省域、市域以及重要行业细分领域的人才需求信息。
第二,在省市层面建立产业人才研究专业智库,协同职业教育学、劳动经济学、产业经济学等研究领域的专业人员,开展产业人才研究,包括确立产业人才需求分析内容框架与指标体系、研究需求数据采集方法与路径、构建产业人才需求预测模型等,开展产业人才需求与职业教育供给匹配研究,包括围绕规模、层次、类型、能力等建立产业人才需求与职业教育供给匹配机制等。
第三,定期发布产业人才供需分析报告,有效引导省域内职业院校规模、专业、课程与产业规模、产业布局、人才需求的精准适配、有效对接。
现代职业教育高质量发展需要不断增强职业教育适应性,培养更多与产业发展需求高度匹配的高素质技术技能人才,开展产业人才需求研究以支撑职业教育供给侧改革势在必行。(作者:付雪凌系华东师范大学职业教育与成人教育研究所所长助理,石伟平系华东师范大学终身教授、职业教育与成人教育研究所名誉所长)
供需不匹配是制约职教发展一大痛点
科学技术的发展带来产业与职业岗位的持续变革,引发人才需求的持续变化。唯有及时研究产业和职业发展趋势,分析其对人才规模、层次、类型、能力等方面的需求,才能准确引导职业教育人才供给规模、结构与质量适应现在及未来产业发展的客观要求,高质量推动职业教育供给侧结构性改革。将产业人才需求调研作为确定职业教育规模、专业与课程的基础性和前提性工作,已成为绝大多数职业教育发达国家的共识和普遍做法。
职业院校人才培养与产业需求不匹配是当前职业教育发展中的突出问题,也是制约职业教育发展的一大痛点。部分业务主管部门、省市政府、行业组织、职业院校、职业教育行业教学指导委员会和咨询企业等机构与组织已经在开展产业人才需求调研并发布相关报告,但也存在普遍性问题:第一,在组织性上,主要表现在主管部门、行业、行指委、院校多头开展调研,缺乏统一协调机制,企业数据反复采集,信息碎片化、孤岛化问题突出,分析报告权威性欠缺;第二,在科学性上,主要表现为需求指标确定随意、数据来源不明、样本量偏少、抽样随机、数据分析黑箱、分析结论主观等,研究报告科学性不高;第三,在指导性上,主要表现在需求与供给“两张皮”,需求分析结论对职业教育供给侧结构性改革缺乏科学、持续引导等。
究其原因,产业人才需求研究是劳动经济学的重要分支,也是职业教育研究的重要领域,是一个专业性、科学性、系统性要求非常高的研究领域,而目前国内开展的大部分产业人才需求调研缺乏专业理论、方法和团队支撑。一是我国产业人才需求分析相关理论研究,尤其是同时考虑需求分析与职业教育供给的相关理论研究基础较为薄弱;二是企业需求数据采集困难,对采集哪些数据、如何采集数据缺乏方法研究与机制设计;三是现有大多数机构不具备科学开展产业人才需求研究的专业能力与资源调配能力。
产业人才需求研究的关键与借鉴
研究表明,职业教育对经济社会贡献度大的国家和地区,政府均设立专门机构,研究产业人才需求变化情况,定期发布需求数据。各个国家和地区采取的策略虽有不同,但基本是围绕“谁研究”“研究什么”“如何研究”三个问题展开。这也是我国开展产业人才需求研究的三个关键问题。
问题一:谁研究,即产业人才需求研究主导模式。
不同国家和地区主导产业人才需求研究与信息发布的机构不同,主要分为三类:劳动部门主导、教育部门主导和产业主管部门主导。
劳动部门主导模式的典型案例是美国。1998年,美国劳工部就业与培训管理局开发并向公众免费开放“职业信息网络”(O*NET),涵盖近千种职业的供需实时信息,在学校与岗位、供给与需求之间架设了实时信息联通通道。
教育部门主导模式的典型案例是德国。德国依托联邦职业教育研究所(BIBB)和雇主协会,基于企业人才需求与职业要求,每年开展教育职业目录的开发与更新工作,已形成了完善的标准与程序,保证职业教育供给与需求的对接。
产业主管部门主导模式的典型案例是中国台湾地区。由台湾发展委员会整合经济、交通等产业主管部门,开展智能制造、人工智能等重点产业人才需求调查与预测,基于产业人才供需信息,制定人才发展战略,相关供需报告定期发布在产业人力供需资讯网站上。
不同机构主导产业人才需求研究的出发点、侧重点和信息特征存在差异。劳动部门主导模式以汇集分析职业信息为出发点,侧重职业特征与职业变化趋势分析,信息量最丰富且标准化程度高;教育部门主导模式以供给如何匹配需求为出发点,侧重研究产业和职业变化对教育产生的影响,对教育供给指导性更强,企业需求信息资源主要来自雇主协会,更关注信息深度挖掘;产业主管部门主导模式以服务产业发展规划为出发点,侧重产业未来变化对人才的需求,信息前瞻性更强。我国开展产业人才需求研究必须统合协调产业主管部门、教育部门和人社部门的需求与资源,借鉴成功经验进行制度框架的顶层设计。
问题二:研究什么,即产业人才需求分析框架。
产业人才需求分析框架需要确定分析对象和分析内容两个层面的问题。
分析对象即确定面向哪些产业开展人才需求分析,美国O*NET涉及的面最广,覆盖了绝大多数行业与职业;中国台湾地区则选择新兴产业和支柱产业进行分析。我国在推进产业人才需求研究时不宜全面开展,应选择战略重点产业先行先试,成熟后再考虑逐步扩展到更大范围。
产业人才需求分析内容框架通常包含4个部分的内容:产业发展与变化趋势、产业人才需求量化分析、产业人才需求质性分析、供给建议。美国O*NET的内容框架涵盖面最广,分析内容细致,包括围绕职业分析职业要求、劳动力市场特征、岗位信息;围绕员工的特质、能力与经验要求。我国确立产业人才需求分析内容框架时需要立足国情、产业实际和职业教育供给需要,科学确定分析内容指标体系。
问题三:如何研究,即产业人才需求数据来源与研究方法。
产业人才需求数据来源主要包括:政府统计数据、通过大数据技术手段抓取的网络招聘信息数据和面向雇主和雇员发放问卷获取的调研数据等。
获取数据的方法包括传统的问卷调查和新兴的大数据分析。问卷调查主要用于收集当前和未来短期内的信息,对调研工具设计、实地调查、数据清理等技术要求高,时间、人力和物力投入成本均比较大。大数据分析主要采用网络爬虫等技术,提供相对实时的技术变化和技能需求信息,对搜索算法、技术技能的编码分类等要求较高。
统计数据、问卷数据和招聘数据只能呈现过去和当下的需求,还需要建立科学的人才预测模型,目前常用预测模型包括灰色预测模型、组合预测模型和BP神经网络模型等。不论是数据来源渠道、数据获取方法和预测模型设计都需要专业理论与专业方法的有效支撑。
立足省域依托大数据搭建研究平台
立足省市建立高质量供需对接机制,建立专业机构系统分析和产业人才需求变化追踪,建立区域产业人才供需信息发布平台,是提升职业教育适应性的可行之路。
第一,以各省份大数据局建设为契机,开发人才供需大数据平台,协同并整合发改委、工信部门、国资委等产业主管部门,以及人社部门、教育部门、统计部门等的资源与数据,建立完整、准确、及时的省域、市域以及重要行业细分领域的人才需求信息。
第二,在省市层面建立产业人才研究专业智库,协同职业教育学、劳动经济学、产业经济学等研究领域的专业人员,开展产业人才研究,包括确立产业人才需求分析内容框架与指标体系、研究需求数据采集方法与路径、构建产业人才需求预测模型等,开展产业人才需求与职业教育供给匹配研究,包括围绕规模、层次、类型、能力等建立产业人才需求与职业教育供给匹配机制等。
第三,定期发布产业人才供需分析报告,有效引导省域内职业院校规模、专业、课程与产业规模、产业布局、人才需求的精准适配、有效对接。
现代职业教育高质量发展需要不断增强职业教育适应性,培养更多与产业发展需求高度匹配的高素质技术技能人才,开展产业人才需求研究以支撑职业教育供给侧改革势在必行。(作者:付雪凌系华东师范大学职业教育与成人教育研究所所长助理,石伟平系华东师范大学终身教授、职业教育与成人教育研究所名誉所长)
【边狱公司】
[ 6月8日定期更新公告 ]
[简单翻译]
维护时间:6月8日 9:00 ~ 11:00
请及时关闭游戏。
【更新内容】
1. 新特定提取 -【技术解放联盟·蔷薇扳手工坊】(6/8 11:00 ~ 6/22 08:59)
以下人格出现率提升。
- 星3:脑叶E.G.O::狐雨 希斯克利夫
- 星2:蔷薇扳手工坊 收尾人 格里高尔
2. 第2季(中)开始后的主要更改
⑴ 开放主线剧情4章 -(中)
- 开放条件:通关4-27
⑵ 第2季Limbus通行证 - Reminiscence(中)解锁
解锁Lv.21~Lv.40的通行证奖励。
通行证等级与持续解锁的奖励不同,可以不断累积。在后续奖励解锁后,可以立即领取相应等级的奖励。
⑶ 编成新功能 - 设定操作面板中行动追加的顺序
更改前:每回合“随机”追加
更改后:每回合按照“编成窗口中选择罪人的顺序”追加
⑷ 更改线绳商店的名称
变更后:碎片::线绳交换机
⑸ 下修4章(上)中登场敌人的部分技能和行动槽数
3. BUG修复以及内容优化
- 修正 粉红欲望EGO以实玛丽的被动“粉色缎带”的文字说明与实际性能不符的问题。
- 修正 R公司第4群驯鹿队以实玛丽的人格详细窗口中,同步3阶段的图像显示错位的问题。
- 修正 人格详细窗口中其他人格的同步3阶段图像不显示的问题。
- 修正 获得斗牛披风EGO以实玛丽,斗牛披风EGO默尔索后定型文没有追加的问题。
- 修正 通关主线2章后,驾驶席中显示可以选择3.5章的问题。
- 修正 豆豆派首领鸿璐S2“剜刺”硬币的再使用效果不发动的现象。
- 调整 异想体部位HP值标示的位置
更改前:数值在HP条的右侧
更改后:数值在HP条的左侧
- 修正 删除好友时,好友数不实时更新的问题。
- 修正 特定条件下蔷薇扳手工坊代表罗佳的语音无法播放的问题。
- 修正 特定条件下蔷薇扳手工坊收尾人默尔索的语音无法播放的问题。
- 修正 蔷薇扳手工坊代表罗佳的S2“震动压制”的第2个动作演出中伤害标记错误的问题。(游戏系统上没有问题)
- 修正 斗牛披风EGO以实玛丽演出结束后,角色Sprite不显示的问题。
- 修正 打倒“黄铜公牛 - 流泪”不计入通行证任务“在战斗中镇压异想体”中的问题。
【定期更新维护补偿】
- 补偿内容:狂气×300
- 补偿发放对象:2023年6月15日 8:59 前创建账号的所有玩家。
【注意事项】
- 请及时更新到最新版本。
- 游戏资源下载时中断游戏可能导致下载失败,请避免强制关闭游戏。
- 维护中无法游戏。
- 维护的时间可能会因为维护状况而有变动,有变动时会再次通知。
- 推荐wifi环境。
- 为防止游客账号丢失推荐绑定。
- 维护补偿将在维护后发放,每个账号一次。可能会因为网络原因有所延迟。
- 补偿领取期限7天。
[ 6月8日定期更新公告 ]
[简单翻译]
维护时间:6月8日 9:00 ~ 11:00
请及时关闭游戏。
【更新内容】
1. 新特定提取 -【技术解放联盟·蔷薇扳手工坊】(6/8 11:00 ~ 6/22 08:59)
以下人格出现率提升。
- 星3:脑叶E.G.O::狐雨 希斯克利夫
- 星2:蔷薇扳手工坊 收尾人 格里高尔
2. 第2季(中)开始后的主要更改
⑴ 开放主线剧情4章 -(中)
- 开放条件:通关4-27
⑵ 第2季Limbus通行证 - Reminiscence(中)解锁
解锁Lv.21~Lv.40的通行证奖励。
通行证等级与持续解锁的奖励不同,可以不断累积。在后续奖励解锁后,可以立即领取相应等级的奖励。
⑶ 编成新功能 - 设定操作面板中行动追加的顺序
更改前:每回合“随机”追加
更改后:每回合按照“编成窗口中选择罪人的顺序”追加
⑷ 更改线绳商店的名称
变更后:碎片::线绳交换机
⑸ 下修4章(上)中登场敌人的部分技能和行动槽数
3. BUG修复以及内容优化
- 修正 粉红欲望EGO以实玛丽的被动“粉色缎带”的文字说明与实际性能不符的问题。
- 修正 R公司第4群驯鹿队以实玛丽的人格详细窗口中,同步3阶段的图像显示错位的问题。
- 修正 人格详细窗口中其他人格的同步3阶段图像不显示的问题。
- 修正 获得斗牛披风EGO以实玛丽,斗牛披风EGO默尔索后定型文没有追加的问题。
- 修正 通关主线2章后,驾驶席中显示可以选择3.5章的问题。
- 修正 豆豆派首领鸿璐S2“剜刺”硬币的再使用效果不发动的现象。
- 调整 异想体部位HP值标示的位置
更改前:数值在HP条的右侧
更改后:数值在HP条的左侧
- 修正 删除好友时,好友数不实时更新的问题。
- 修正 特定条件下蔷薇扳手工坊代表罗佳的语音无法播放的问题。
- 修正 特定条件下蔷薇扳手工坊收尾人默尔索的语音无法播放的问题。
- 修正 蔷薇扳手工坊代表罗佳的S2“震动压制”的第2个动作演出中伤害标记错误的问题。(游戏系统上没有问题)
- 修正 斗牛披风EGO以实玛丽演出结束后,角色Sprite不显示的问题。
- 修正 打倒“黄铜公牛 - 流泪”不计入通行证任务“在战斗中镇压异想体”中的问题。
【定期更新维护补偿】
- 补偿内容:狂气×300
- 补偿发放对象:2023年6月15日 8:59 前创建账号的所有玩家。
【注意事项】
- 请及时更新到最新版本。
- 游戏资源下载时中断游戏可能导致下载失败,请避免强制关闭游戏。
- 维护中无法游戏。
- 维护的时间可能会因为维护状况而有变动,有变动时会再次通知。
- 推荐wifi环境。
- 为防止游客账号丢失推荐绑定。
- 维护补偿将在维护后发放,每个账号一次。可能会因为网络原因有所延迟。
- 补偿领取期限7天。
多线程是指操作系统在单个进程内支持多个并发执行路径的能力。每个进程执行单个线程的传统方法,其中线程的概念不被识别,被称为单线程方法。图4.1左半部分所示的两种布置是单线程方法。MS-DOS是一个支持单用户进程和单线程的操作系统示例。其他操作系统,例如UNIX的一些变体,支持多个用户进程,但每个进程只支持一个线程。图4.1的右半部分描述了多线程方法。Java运行时环境是具有多个线程的一个进程的系统的一个示例。感兴趣的是使用多个进程,每个进程都支持多个线程。这种方法在Windows、Solaris和许多现代版本的UNIX等中采用。在多线程环境中,进程被定义为资源分配单元和保护单元。以下区域与进程相关:
1.保存进程映像的虚拟地址空间。
2.对处理器、其他进程(用于进程间通信)、文件和I/O资源(设备和通道)的受保护访问。
在一个进程中,可能有一个或多个线程,每个线程具有以下内容:
1.线程执行状态(Running、Ready等)
2.未运行时保存的线程上下文;查看一个线程的一种方法是将其视为在进程中运行的独立程序计数器。
3.执行堆栈
4.线程静态存储的某些局部变量。
5.访问进程的内存和资源,与该进程中的分配线程共享
图4.2从进程管理的角度说明了线程和进程之间的区别。在单线程进程模型中(即,没有线程的明确概念),进程的表示包括其进程控制块和用户地址空间,以及管理进程执行的调用/返回行为的用户和内核堆栈。当进程运行时,它控制处理器寄存器。这些寄存器的内容在进程未运行时保存。在多线程环境中,仍然存在与进程相关联的单个进程控制块和用户地址空间,但现在每个线程都有单独的堆栈,以及每个线程的单独控制块,其中包含寄存器值、优先级和其他与线程相关的状态信息。
因此,进程的所有线程共享该进程的状态和资源。它们位于相同的地址空间中,可以访问相同的数据。当一个线程更改内存中的数据项时,其他线程在访问该项时会看到结果。若一个线程以读取权限打开一个文件,则同一进程中的其他线程也可以从该文件中读取。
线程的主要好处来自于性能影响:
1.在现有进程中创建一个新线程所花费的时间要比创建一个全新进程花费的时间少得多。Mach开发人员所做的研究表明,在UNIX中,线程创建比进程创建快十倍[TEVA87]。
2.终止线程所花费的时间比终止进程所花费的更少。
3.在同一进程内的两个线程之间切换比在进程之间切换花费的时间更少。
4.线程提高了不同执行程序之间的通信效率。在大多数操作系统中,独立进程之间的通信需要内核的干预,以提供通信所需的保护和机制。但是,由于同一进程中的线程共享内存和文件,因此它们可以在不调用内核的情况下相互通信。因此,如果有一个应用程序或函数应该作为一组相关的执行单元来实现,那么作为线程的集合而不是单独进程的集合来实现要高效得多。
可以使用线程的应用程序的一个例子是文件服务器。当每个新的文件请求进入时,文件管理程序可以占用一个新的线程。由于服务器将处理许多请求,因此将在短时间内创建和销毁许多线程。如果服务器在多处理器计算机上运行,那么同一进程中的多个线程可以在不同的处理器上同时执行。此外,由于文件服务器中的进程或线程必须共享文件数据,从而协调它们的操作,因此使用线程和共享内存比使用进程和消息传递进行协调更快。
线程结构在单个处理器上也很有用,可以简化逻辑上执行几个不同功能的程序的结构。
[LEW88]给出了在单用户多处理系统中使用线程的四个示例:
1.前台和后台工作:例如,在一个readsheet程序中,一个线程可以显示菜单和读取用户输入,而另一个线程执行用户命令并更新电子表格。这种安排通常通过允许程序在上一个命令完成之前提示下一个命令来提高应用程序的感知速度。
2.异步处理:程序中的异步元素可以实现为线程。例如,为了防止电源故障,可以设计一个字处理器,每分钟将其随机存取存储器(RAM)缓冲区写入磁盘一次。可以创建一个线程,该线程的唯一任务是定期备份,并直接用操作系统调度自己;主程序中不需要花哨的代码来提供时间检查或协调输入和输出。
3.执行速度:多线程进程可以在从设备读取下一批数据的同时计算一批数据。在多处理器系统上,同一进程中的多个线程可以同时执行。因此,即使一个线程可能被阻止用于读取一批数据的I/O操作,另一个线程也可能正在执行。
4.模块化程序结构:涉及各种活动或各种输入输出来源和目的地的程序可能更容易使用线程设计和实现。
在支持线程的操作系统中,调度是在线程的基础上完成的;因此,处理执行的大多数状态信息都保存在线程级数据结构中。但是,有几个操作会影响进程中的所有线程,并且操作系统必须在进程级别进行管理。例如,挂起,涉及将一个进程的地址空间从主存中交换出来,为另一个进程腾出空间。因为进程中的所有线程共享相同的地址空间,所以所有线程都会同时挂起。类似地,进程的终止会终止该进程中的所有线程。
1.保存进程映像的虚拟地址空间。
2.对处理器、其他进程(用于进程间通信)、文件和I/O资源(设备和通道)的受保护访问。
在一个进程中,可能有一个或多个线程,每个线程具有以下内容:
1.线程执行状态(Running、Ready等)
2.未运行时保存的线程上下文;查看一个线程的一种方法是将其视为在进程中运行的独立程序计数器。
3.执行堆栈
4.线程静态存储的某些局部变量。
5.访问进程的内存和资源,与该进程中的分配线程共享
图4.2从进程管理的角度说明了线程和进程之间的区别。在单线程进程模型中(即,没有线程的明确概念),进程的表示包括其进程控制块和用户地址空间,以及管理进程执行的调用/返回行为的用户和内核堆栈。当进程运行时,它控制处理器寄存器。这些寄存器的内容在进程未运行时保存。在多线程环境中,仍然存在与进程相关联的单个进程控制块和用户地址空间,但现在每个线程都有单独的堆栈,以及每个线程的单独控制块,其中包含寄存器值、优先级和其他与线程相关的状态信息。
因此,进程的所有线程共享该进程的状态和资源。它们位于相同的地址空间中,可以访问相同的数据。当一个线程更改内存中的数据项时,其他线程在访问该项时会看到结果。若一个线程以读取权限打开一个文件,则同一进程中的其他线程也可以从该文件中读取。
线程的主要好处来自于性能影响:
1.在现有进程中创建一个新线程所花费的时间要比创建一个全新进程花费的时间少得多。Mach开发人员所做的研究表明,在UNIX中,线程创建比进程创建快十倍[TEVA87]。
2.终止线程所花费的时间比终止进程所花费的更少。
3.在同一进程内的两个线程之间切换比在进程之间切换花费的时间更少。
4.线程提高了不同执行程序之间的通信效率。在大多数操作系统中,独立进程之间的通信需要内核的干预,以提供通信所需的保护和机制。但是,由于同一进程中的线程共享内存和文件,因此它们可以在不调用内核的情况下相互通信。因此,如果有一个应用程序或函数应该作为一组相关的执行单元来实现,那么作为线程的集合而不是单独进程的集合来实现要高效得多。
可以使用线程的应用程序的一个例子是文件服务器。当每个新的文件请求进入时,文件管理程序可以占用一个新的线程。由于服务器将处理许多请求,因此将在短时间内创建和销毁许多线程。如果服务器在多处理器计算机上运行,那么同一进程中的多个线程可以在不同的处理器上同时执行。此外,由于文件服务器中的进程或线程必须共享文件数据,从而协调它们的操作,因此使用线程和共享内存比使用进程和消息传递进行协调更快。
线程结构在单个处理器上也很有用,可以简化逻辑上执行几个不同功能的程序的结构。
[LEW88]给出了在单用户多处理系统中使用线程的四个示例:
1.前台和后台工作:例如,在一个readsheet程序中,一个线程可以显示菜单和读取用户输入,而另一个线程执行用户命令并更新电子表格。这种安排通常通过允许程序在上一个命令完成之前提示下一个命令来提高应用程序的感知速度。
2.异步处理:程序中的异步元素可以实现为线程。例如,为了防止电源故障,可以设计一个字处理器,每分钟将其随机存取存储器(RAM)缓冲区写入磁盘一次。可以创建一个线程,该线程的唯一任务是定期备份,并直接用操作系统调度自己;主程序中不需要花哨的代码来提供时间检查或协调输入和输出。
3.执行速度:多线程进程可以在从设备读取下一批数据的同时计算一批数据。在多处理器系统上,同一进程中的多个线程可以同时执行。因此,即使一个线程可能被阻止用于读取一批数据的I/O操作,另一个线程也可能正在执行。
4.模块化程序结构:涉及各种活动或各种输入输出来源和目的地的程序可能更容易使用线程设计和实现。
在支持线程的操作系统中,调度是在线程的基础上完成的;因此,处理执行的大多数状态信息都保存在线程级数据结构中。但是,有几个操作会影响进程中的所有线程,并且操作系统必须在进程级别进行管理。例如,挂起,涉及将一个进程的地址空间从主存中交换出来,为另一个进程腾出空间。因为进程中的所有线程共享相同的地址空间,所以所有线程都会同时挂起。类似地,进程的终止会终止该进程中的所有线程。
✋热门推荐