前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇分配方案范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
分配方案范文第1篇
方案对象:分公司所有参与考核人员
方案目的:通过结构工资制,希望能达到能级对应、人岗匹配、人尽其才、岗得其人、岗薪相应的效果。
方案方式:
月结构工资=基础工资+岗位工资-个人部分养老保险、医疗保险费、公积金
年薪工资=月结构工资×12+分公司年利润比例分成(绩效工资)
月结构工资按月发放,年底分公司年利润比例分成(绩效工资)一次性支付。
方案规则:
一、基本工资采取学历工资+工龄工资方式确定工资等级.
二、岗位工资以岗定薪,薪随岗变,实现薪酬与岗位价值挂钩,体现员工在当前岗位和现有技能水平上通过自身努力为公司实现的价值。?
三、如在日后的工作过程中考取对总公司适用的学历,可在取得证书原件提交到公司的下月起按新学历计算学历工资(取得适用证书的要及时总公司办公室备案)。
四、所有员工按岗位入级后得出的结构工资总额如果高于现有工资总额,则自动调整为按岗位入级后的新结构工资;如果低于现有工资总额,则调整为新的岗位等级工资。
五、如岗位工资已为本类别最高级别且职务无变动,则岗位工资除参与公司物价性整体调资外不再调整。
七、分公司特聘高级或专业人才薪资待遇报总公司批准后另行制定。
八、岗位工资依据分公司经营状况及物价水平1—3年调整一次。
九、新入职员工的薪资在签订劳动合同一年后按该方案实施。
十、取得职业资格的补贴标准按总公司方案执行。
十一、本专业不对口的人员起点从普通员开始。
十二、事业编制人员取消原年效益工资与第13个月工资政策,如果分公司无利润分成则补足档案工资。
十三、分公司年利润的分成拿总利润的约1/3分配:A岗位占1/3的25%、B岗位占1/3的16%、C岗位占1/3的5%、D岗位占1/3的3%、E岗位占1/3的2%、F岗位占1/3的1%,剩余2/3以丰防荒,退休人员不再参与分配。
十四、本方案从2024年元月1日起实施,实施时间暂定为一年。进步较大或表现不佳人员将重新评定岗位等级。
说明:
1、在这一年度中,累计旷工满5天者,本年度取消绩效工资、学历工资、工龄工资、分公司年利润比例分成。
2、在这一年度中,非因公休假累计满1个月者,本年度取岗位工资、分公司年利润比例分成(绩效工资)。
附表一:??????????????? 岗位分类表
岗位类别
岗位名称
A
分公司经理
B
分公司副经理
C
技术负责人
D
主要技术骨干、主要业务骨干
E
一般技术骨干、一般业务骨干
F
一般职工
附表二:???????????? 岗位工资等级表
岗位类别
岗位工资
A
5000元
B
4000元
C
3300元
D
2800元
E
2300元
F
1800元
附表三:????????????????
岗位类别评定表
一般职工(F类):
无任何工作实践的非相关专业毕业生,或通过实践需在经常性指导下才能从事现有工作。
一般技术骨干、一般业务骨干(E类):
通过实践或公司培养,仍未能完全独立胜任现有某项工作,但较之以往有很大的进步,但需督促和时时提点且或接受进一步的学习和锻炼,且能够积极主动地从事其他相关工作。
主要技术骨干、主要业务骨干(D类):
能够出色地完成本职工作,在同类别岗位中起标杆起带头作用。
技术负责人(C类):
能够带领其他员工做好本职及项目技术管理其他相关工作。
分配方案范文第2篇
第一章总则
第一条通过工资杠杆激励人、留住人、淘汰人,体现收入与贡献对等,以“论责任、论贡献、绩效优先”为原则,调动广大员工的工作积极性,推动员工发展和公司发展相结合的人性化管理,实现公平、公正,完成经营目标任务,特制订本办法。
第二条 本方案适用于公司管理层、依岗位设置聘用的上岗并签订《劳动合同》的员工、试用期员工。(不含总经理)
第三章? 发放方式
第三条 总监平时发放比例不超过薪资上限的60%,部门经理平时发放比例不超过薪资上限的70%分档发放,部门经理以下人员平时发放比例不超过薪资上限的90%,基层员工(指转正后员工、不含季节性用工、计件工资岗位及学徒)月度实发工资原则上不得低于2000元(但严重违反公司规章制度、出勤率较低、业绩完成情况不理想者除外)。余下的百分数留着作年底考核,根据任务完成情况总体平衡。
第四章薪资结构
第四条 公司员工工资总额总体上包括以下几个组成部分:
员工工资总额=基本工资+岗位工资+绩效工资+加班工资+其他补贴工资+年终绩效。
(1)基本工资:基本工资为基本生活费,标准为880元。
(2)岗位工资:根据岗位工作性质、工作强度、职务高低等确定的工资部分,各岗位工资根据公司经营指标完成情况,以及
????????
岗位
指标完成
总监
经理
领班
员工A档
员工B档
员工C 档
公司指标完成80%及以上
1500
1400
1200
900
800
700
公司指标完成40%-80%
1300
1200
900
800
700
600
公司指标完成40%以下
400
400
400
400
400
400
本人在公司所担任职务及职责确定。
(3)绩效工资:与公司每月经营效益和员工工作业绩直接挂钩。
(4)加班工资:用来支付当月未休假、日常超时、夜班费用及法定节假日加班的工资部分。
(5)其它补工资:国家规定发放的津贴(补贴)、对特殊岗位或特殊人才的津贴(补贴)以及其它补助等工资部分。
(6)年终绩效:为确保年终绩效和每月考核挂钩,对照员工每月薪资发放累计总额的10%-40%作为年终基数,并根据公司考核结果发放。
第五章考核办法
第五条 在公司核定的工资总额范围内,依据公司人力资源政策和用工制度逐月考核,不同部门、不同岗位设置不同考核重点,加大绩效考核权重,落实“一岗多级、一级多档”,体现“论责任、论贡献、绩效优先”的原则。每月初进行上月岗位绩效考核。根据不同岗位工作内容,对照《月度岗位绩效考核表》,对考核对象进行考核,绩效考核结果与当月绩效工资和年终分配直接挂钩。
1、绩效工资:各岗位绩效基数为1500元。绩效系数根据当月经营情况、岗位级别、岗位性质、工作职责及劳动强度确定。具体如下:
经营情况
总监
经理
领班
A类员工
B类员工
C类员工
经营指标完成80%及以上
2.7
2.2
2.0
1.8
1.7
1.6
经营指标完成60%-80%
2.5
2.1
1.9
1.7
1.6
1.5
经营指标完成60%以下
2.3
2.0
1.8
1.6
1.5
1.4
各岗位月度绩效计算方式如下:
经理及以上人员月度绩效=月绩效基数*公司月度经营考核结果;
销售岗员工绩效=月绩效基数*(公司月度经营考核结果*70%+日常表现考核结果*30%);
其他人员月度绩效=月绩效基数*(公司经营指标考核结果*50%+日常表现考核结果*50%);
2、年终绩效:
年终绩效基数为员工1-12月份每月发放薪资累计总额的10%-40%。即个人年终绩效=(1-12月份)薪资总额比例系数E,比例系数E根据岗位设定,具体为:
岗位
总监
经理
领班
销售
其他
年终绩效
40%
30%
15%
15%
10%
第六章安全奖分配
第六条 安全奖按照公司年度考核工资总额的3%设立。即安全奖基数=工资总额*3%。
(一)安全奖的计算
安全奖=安全奖基数×安全考核得分对应的奖励比例
(二)安全考核得分对应的奖励比例
⑴年度考核得分在95分(含)以上:按奖励基数的100%奖励;
⑵年度考核得分为90(含)-95分:按奖励基数的90%奖励;
⑶年度考核得分为85(含)-90分:按奖励基数的80%奖励;
⑷年度考核得分为80(含)-85分:按奖励基数的70%奖励;
⑸年度考核得分为70(含)-80分:按奖励基数的50%奖励;
⑹年度考核得分在70分以下的不予奖励。
(三)分配方式
⑴根据各岗位的安全责任、岗位性质设定不同的安全系数,安全奖根据对应的安全系数分配,具体为:
⑵安全奖个人分配额=安全奖÷8×安全系数。
⑶各岗位安全系数如下:
岗位
总监
经理
(兼安全员)
其他经理
领班
销售员
其他人员
安全系数
1.8
1.8
1.2
1.2
1
1
第七章市场奖分配
第七条 当公司超额完成年度收入计划任务,即收入计划完成率〉100%,按其工资总额的5%给予市场奖励。
为激励员工销售佛像产品积极性,决定在市场奖计提50%用于产品销售奖励,具体分配参照个人销售所占比例分配。即个人销售奖励=个人销售收入。
其余40%市场奖分配方式:根据各岗位的岗位性质、工作内容设定不同的市场系数,市场奖根据对应的安全系数分配,具体为:
⑵市场奖个人分配额=市场奖÷8×市场系数。
⑶各岗位市场系数如下:
岗位
总监
市场经理
其他经理
领班
销售
其他人员
市场系数
1.7
1.7
1.6
1.5
第八章? 薪资发放
第八条 公司员工工资按月(每月10日前)由人力资源专员造表经公司财务部审核,报公司总经理批准后,由财务部每月15日通过银行发放。
第九条 加班超时工资,每月统计一次,以个人当月刚性工资(基本工资+岗位工资)为基数,按规定核算,既可以在本月发放,也可在年终一并发放。
第九章 附则
1、员工休病、婚、产假、丧假等按《劳动法》和《公司请销假制度》执行,若当月请假超过15天,不计发当月绩效工资。
2、高岗位兼低岗位时,以高岗位工资为准,不另补偿工资。
3、福利、保险和其它专项津贴、奖金,根据《劳动法》和文旅集团的有关规定执行。
3、解除(终止)劳动合同时的薪资处理,按签订的《劳动合同书》执行。
分配方案范文第3篇
学院房改工作委员会于20__年10月20日召开常务委员会议,对东城小区新建住房的分配问题进行了研究和讨论,议定的分配对象、分配原则经11月2日院务会议通过,12月21日院务会确定培养和引进的博士赠送75M2住房兑现相关政策。
一、入住东城小区新建住房的对象
为了实现“两申”目标,更好地吸引人才、稳定人才,切实解决他们的住房问题,东城小区新建122套住房,经5月20日院务会议确定为人才用房。为此,东城小区新建122套住房,除用于青年教职工过渡42套外,其余80套用于安置在编在岗的下列人员:
1、无住房或现住房建筑面积未达到120M2的正高级专业技术职务人员;
2、现住房建筑面积未达到100M2的已获博士学位的副高级专业技术职务人员;
3、现住房建筑面积未达到75M2的已获博士学位的人员;
4、学院正式承诺解决住房的引进人员:
(1)引进博士团人员如果具有副高职称的参与第二类人员计分排队;无副高职称的参与第三类人员计分排队,学位按博士计算;
(2)学院承诺了住房引进具有硕士学位的回国人员享受博士待遇的,计分办法同(1)。
以上获得正高职称、副高职称、博士毕业证的截止时间为:20__年12月31日。
二、东城小区新建住房分配原则
1、凡符合上述条件的人员均可申请购买东城小区新建住房。
2、根据学院分房条例计分办法,按正高级专业技术职务、博士学位副高级专业技术职务、已获博士学位的、其他引进的人员等四个系列分别打分,由高分到低分排序;学院承诺享受博士待遇的人员按博士计分排队。
计分办法:总分=职称或级别分 房龄分 附加分。
(1)职称、级别分
序号职称、级别得分
1正厅局级干部47分
2副厅局级干部、正教授41分
3正处级干部、副教授、博士毕业生及相应高级职称人员35分
4副处级干部、讲师、硕士毕业生及相应中级职称人员29分
(2)房龄分
工龄分:按实际报到参加工作时间计算,满一年为0.6分,不满一年按月计算,每月为0.05分。
学龄分:在大学、大专学习时间可作为房龄,按国家规定的学制年限计算,不含休退学及留级等时间。从高中毕业进入中专学习的,中专学习期间可计算学龄分(学龄分计算起始时间为9月份)。
学龄分与工龄分不重复计算。
(3)附加分
①直系烈属(三代以内)、军属(二代以内)、因公致残人员(三等残废以上)加0.6分。
②华侨、侨眷、澳港台属(直系亲属)加0.6分。
③国家级劳模,国家级奖获奖者(证书须有国家行政部门公章):
序号奖项及等级得分
1全国劳模(五一劳动奖章、三八红旗手等)加5分
2全国教育系统劳动模范加4分
3全国优秀教师加3分
国家自然科学奖一等奖加5分
二等奖加4分
三等奖加3分
国家科技进步奖一等奖加5分
二等奖加4分
三等奖加3分
国家发明奖一等奖加5分
二等奖加4分
三等奖加3分
9全国教学优秀成果奖加3分
④部、省级劳模及部、省级奖获得者(证书须有部、省级行政部门公章或注明获奖等级):
序号奖项及等级得分
1省、部级劳模加2分
2省、级劳模教育系统劳动模范加1.5分
3省、部级优秀教师加1分
4省、部级教学优秀成果加1分
省、部级科技进步奖一等奖加2分
二等奖加1.3分
三等奖加1分
⑤享受国家政府特殊津贴加1分
注:一等奖取前三名获得者加分;二等奖获得者取前二名加分;三等奖获得者取前一名加分。每一奖只能使用一次。
3、选房顺序为:正高级专业技术职务人员、博士学位副高级专业技术职务人员、已获博士学位的人员、其他引进的人员依次分别由高分到低分进行选房。
4、优先条件:在总分相同的情况下,按优先条件先后依次决定排队名次。
在本院工作的双职工优先;
学历高的优先;
独生子女优先(无子女的24周岁大龄教职工则视同独生子女);
教学科研人员优先;
双肩挑优先(即:凡既从事教学工作又担任副处级以上行政、党务工作的人员,每学期担任教学工作量需达30个学时以上且征得人事和教务部门核实的人员);
职称、职务高的优先;
职称、职务相同时,先评聘先任命的优先;
家庭人口多的优先(指同一户口簿内而又必须住在一起的家庭成员,不包括违反计划生育政策的子女),户口上的有效人口截止时间为:20__年12月31日。
年龄大的优先。
三、原购房的处置及现购房的售价
1、在学院已购住房的教授、博士申请购买东城住房,其原购住房原价退给学院。
2、个人享受面积标准部分按全额集资价1900元/平方米(以最终审计核算价为准)购买;超出享受面积之外的面积部分的售房价格按2400元/平方米(以当年该地段商品房市场最终评估价为准)购买。
3、对培养和引进已经享受学院房改的博士如果要求在新建的东城小区职工住宅赠送75M2住房,则其须将原购住房原价退还给学院后方可享受赠送;对培养和引进没有享受学院房改的博士选择要住房者可在新建的东城小区职工住宅赠送75M2住房。
4、对赠送面积的人员视为已享受房改政策,东城小区住房学院将按房改有关政策申请办理产权(如果参加了房改,原房改房未退出,东城小区购房的产权证办理有困难)。
5、对学院同意购房的其它引进人员,其享受面积标准以内按1900元/平方米(以最终审计核算价为准)计算;超出享受面积之外的面积部分的售房价格按2400元/平方米(以当年该地段商品房市场最终评估价为准)计算。
四、现住原东城小区
院长留房的处理
20__年12月31日以前引进的教职工,现住原东城小区院长留房的,可以申请购买现居住房,其售价原则为:
(1)引进的博士,学院送75M2;
(2)在职称职务所享受面积之内(即76M2—个人享受面积部分)的售房价格:按全额集资价1100元/平方米计算;
(3)超出享受面积之外的面积部分的售房价格:1800元/平方米(以当年该地段商品房市场最终评估价为准)计算。
(4)学院正式承诺的部分引进人员,由学院人才办公室提出具体的名单,按到校时间的不同而定。
五、退出的住房旧房的处理
院内和东城小区老八栋退出的住房作为周转房或引进人才用房,不再出售。
关于购买东城小区新建住房工作的通知凡符合《关于东城小区新建住房分配方案》(已在校务公开栏公布)规定的对象,均可提出申请购买东城小区新建住房(人才用房)。
一、房源及其性质
本次用于解决人才住房可购房源共80套(其中1套已安置拆迁户):三房两厅两卫112.15M2有24套(12栋)、100.38M2有20套(11栋)、106.31M2有24套(10栋)、四房两厅两卫(121.98M2有)12套(9栋)。房源性质为房改集资房。
二、时间安排
1、酝酿20__年元月4日至8日上午7:00—晚上10:00为公布房型图纸、看房、酝酿是否购房时间。
2、申请20__年元月8日下午5:30以前为提交《购买东城小区新建住房申请表》时间。
酝酿成熟的可购买东城住房的人员,填报《购买东城小区新建住房申请表》(在综合管理处网上下载),申请表及相关文件于20__年元月8日下午5:30以前交综合管理处房产管理科(民教部办公楼三楼);
3、审核和计分排序20__年元月8日至11日为审核、统计分数、排名时间;
4、公榜于20__年元月11日至15日分三次公榜:
20__年元月11日下午5:30前公布第一榜;
20__年元月13日下午5:30前公布第二榜(公二榜前由房改委会议解决计分排名中的有关问题);
20__年元月15日下午5:30前公布最终结果第三榜(公三榜前由房改委会议再次讨论解决积分排名中的有关问题);
6、选房20__年元月16日上午为集体看房时间,下午3:00为选房时间(选房地点:东城小区)。
根据《关于东城小区新建住房分配方案》精神,选房顺序为:
正高级专业技术职务人员;
博士学位副高级专业技术职务人员;
已获博士学位的人员;
其他引进的人员。
以上四个档次,依次分别由高分到低分进行选房。
7、交房款20__年元月17日为房款交缴时间。已经选购东城小区住房的人员先到人事处相关待遇手续,再到房产科领取房款交款通知单,然后到财务处交款。
8、房屋钥匙领取20__年元月18日为房屋钥匙领取时间。领钥匙凭财务发票,有退房的需要签订退房协议书。
综合管理处
二六年一月四日
购买东城小区新建住房申请表
姓名出生年月参加工作时间
部门身份证号
现
住
房房号
建筑面积
性质
大学或大专入学时间
现任职称
或职务获得职称或
职务的时间
最高学历获得时间
家庭成员
姓名与申请人关系身份证号工作单位
获
奖
情
况获奖名称(可加附页填写)获奖时间
说明:1、现住房栏:有房的请写清楚房号;无房的分两种情况填写:外租(在学院领了外租住房补贴的)、无学院住房(没有领外租补贴的);无房的不用填写建筑面积与性质栏;
2、现住房性质分外租、租住(指缴房租的学院住房)、已购(分已购学院房改房或已购配偶单位房改房)公房(指不缴房租的学院住房)四种填写;
3、家庭成员姓名:填写截止时间为:20__年12月31日以前户口本上的姓名
4、为了使分房工作顺利进行,凡申请入住东城小区新六栋住房的教职工,在交缴“购买东城小区新建住房申请表”的同时,还需要交缴身份证、现任职称或职务证书或文件、大学或大专毕业证书、最高学历毕业证书以及获奖证书等有效证件的复印件(需带原件审核)。
分配方案范文第4篇
从2004年就开始起草的收入分配改革总体方案,有望于本月面世。这个酝酿多年的方案寄托了民众太多的期望,但据专家介绍,这可能并非一个解决当前贫富差距和收入分配不公的具体方案,而更有可能是一个原则性、框架式的方案。(12月4日《中国经济周刊》)
点评:酝酿8年之久的收入分配改革方案年底有望出台,各界对此既期待殷殷,又担心既得利益者的阻力使得出台的方案无法满足各界的期待和预期。
收入分配改革作为一项重大举措,不仅在于扭转多年来经济高速发展中收入分配失衡问题,更在于通过理顺财富分配格局,提高居民收入,为中国经济转型和可持续发展创造公平分配财富的制度基础。但是,长期以来,中国在收入分配改革方面深受库兹涅茨“倒U”假说的影响,在制度上对收入差距拉大的问题重视程度不够,导致收入差距迅速拉大。
就此而言,本次收入分配改革的意义绝非为了短期刺激内需的救急需要,而是攸关经济转型和社会和谐之大局,需要大手笔、大智慧和大策略,决不能修修补补,小打小闹。
房企“去库存化”的关键是“去暴利”
维持在高位的待售面积,成为悬在房企头上的达摩克利斯之剑。数据显示,截至今年10月,全国待售面积约为3.2亿平米,个别房企按今年的销售速度,所需时间甚至要达到10年。(12月2日 《华夏时报》)
点评:暴利现实之下,出现“滞销”“库存量增大”,也是一个必然的结果。根源在于长期扭曲的商品房价格以及极不合理的利润“暴利”。
在特殊时期,扭曲价值的房产也未必卖不出去,如前几年的暴涨时期,人们跟风买房,但扭曲的价格和扭曲的市场终归不会长久维系,时下房产市场低迷、观望者众,就是这样的反映。
真正能买得起和“炒得起”房子的人群,在政策压力之下已经撤资和“淡出”,而那些真正的刚需群体、缺少房子的人群,在眼睁睁看着高房价的房子的时候,却根本无力购买。一方面是炒者退出,一方面是“后续”不力,库存越积越多实是必然。
“无偿献血意外保险”透出人文关怀
2013年3月1日起,浙江宁波市将为无偿献血者提供免费意外保险,每位献血者在无偿献血48小时内发生意外,最高可获15万元赔偿、8万元医疗费。属全国首创。(12月5日《现代金报》)
点评:在血荒蔓延全国的背景下,无偿献血这一志愿服务行为被赋予了更多含义。社会信任链条的脱节,让老百姓找不到足够托付信任的载体,血荒背后,往往隐伏着信任荒的吊诡气息。
社会保障机制的缺失,让公众的善心义举缺乏底气。老百姓之所以不愿意挽起衣袖走向献血车,通常是激励制度和保障机制的匮乏,让人们缺乏行动的动力。
无偿献血作为一项公共事务,民众参与热情的高与低、参与渠道的通与堵、参与机制的顺与阻,直接影响到无偿献血的成效。从实践上看,如何看待并引导公众的参与热情,早已成为打破血荒困境的重中之重。作为全国第一个“吃螃蟹”的宁波市,无偿献血意外保险有了新的运作逻辑和价值导向!
“天价养老院”不应简单被叫停
广州惊现天价养老院,市民养老须花费45万元买一个VIP床位,入住后每个月要另外交2300元的服务和管理费。非VIP会员入住,每月至少需5700元。此外,水电、伙食费等还需自理。(12月8日《广州日报》)
点评:引进民营资本进入养老市场,引入市场化运作机制,固然值得鼓励,但市场化的结果不是必然的高价甚至天价,一个VIP床位就要价45万元,这显然已突破了养老事业的公益底线。
按道理说,手头富裕了,希望老人住进条件好一点的养老院,过上体面又有尊严的生活,本无可厚非。不过养老作为公益事业,毕竟要有自己的公益底线,不能以赚取过高的利润为唯一目的,而应兼顾为大多数老人提供养老服务的社会功能。
民营资本进入养老领域,可以一定程度缓解养老服务、养老设施相对匮乏的困局。但需要警惕的是:不能打着养老服务的名义,暗中搞地产;也不能脱离养老服务的基本职能,一个劲地往“钱眼”里钻。
给涨价企业多挤挤成本“水分”
武汉两家供水企业申报的近3年水价总成本,合计有30.26亿元,但物价部门最终核定的是28.34亿元,两者相差1.92亿元。日前,武汉市物价局把自来水水价成本监审结果,在城市供水定价总成本一项,挤出了大把“水分”。(12月7日《武汉晚报》)
点评:供水企业申报的水价总成本,竟然可以挤出近2亿元水分,这是出乎我们意料的。这些年来,我们为不该付的水价成本吃了多少“暗亏”?
企业申报数字与物价部门监审结论为何有这么大出入?据解释说,企业公布的成本,是实际运营过程中发生的成本,有多少计多少。市物价局剔除了不必要的成本,比如多余的漏水、超支的招待费等。
水价是包含一定的成本,但成本却不是筐,什么都可往里装,然后让我们为其埋单。与水价成本没有关系的“成本”绝不能强加于我们的身上。水价调价之前进行“挤”成本水分,其他电价、气价调查,是不是也需要挤挤水分、“晒”成本呢?
农民工高工资都是辛苦钱
近日,一份民工工资表引发关注,内容显示泥工日工资220元,最高日工资是队长的350元。但很多网友表示,这是血汗钱、辛苦。(12月2日《潇湘晨报》)
点评:纸面上的数字薪资固然“温婉可人”,但稍有生活常识的都知道,泥水匠做的活儿,几成人能吃得了那份苦、受得了那分累、耐得了面子上的泥灰?面对危险的工作、污染的环境、底层的地位,更多人宁愿选择群居在地下室吃泡面而不去干。
市场经济的基本逻辑就是供求决定价格,“现在的年轻人大多不愿从事装修工作”,加之“每年都有一批年老的装修师傅退休”,在装修的“刚需”面前,泥水师傅必然呈现供不应求的状态,物以稀为贵。
农民工兄弟的这份辛苦钱,分分厘厘都是体力与技术所得,是劳动价值,更是血汗补偿。只有切实改善其工作环境与权益处境,我们的艳羡才会穿越表面化的薪资、回归职业的尊重与敬仰。
讨薪引发恶性事件需警惕
12月4日下午,广东汕头市潮南区陈店镇工厂发生大火,事故共造成14人死亡,1人受伤。随后,火灾事故的犯罪嫌疑人刘某被抓获,供认了因劳资纠纷买40元汽油到该厂放火后逃跑的犯罪事实。(12月5日 新华网)
点评:这是一起典型的“弱者对弱者的残害”的悲剧,在讨薪悲剧中,他是绝对的受害弱者,而在他失去理智的纵火案中,他又成了剥夺他人生命的残忍施暴者。这让这样一起悲剧,越发显得沉重。
分配方案范文第5篇
1 嵌入式系统中对内存分配的要求
①快速性。嵌入式系统中对实时性的保证,要求内存分配过程要尽可能地快。因此在嵌入式系统中,不可能采用通用操作系统中复杂而完善的内存分配策略,一般都采用简单、快速的内存分配方案。当然,对实性要求的程序不同,分配方案也有所不同。例如,VxWorks采用简单的最先匹配如立即聚合方法;VRTX中采用多个固定尺寸的binning方案。
②可靠性。也就是内存分配的请求必须得到满足,如果分配失败可能会带来灾难性的后果。嵌入式系统应用的环境千变万化,其中有一些是对可靠性要求极高的。比如,汽车的自动驾驶系统中,系统检测到即将撞车,如果因为内存分配失败而不能相应的操作,就会发生车毁人亡的事故,这是不能容忍的。
③高效性。内存分配要尽可能地少浪费。不可能为了保证满足所有的内存分配请求而将内存配置得无限大。一方面,嵌入式系统对成本的要求使得内存在其中只是一种很有限的资源;另一方面,即使不考虑成本的因素,系统有限的空间和有限的板面积决定了可配置的内存容量是很限的。
2 静态分配与动态分配
究竟应用使用静态分配还是动态分配,一直是嵌入式系统设计中一个争论不休的总是。当然,最合适的答案是对于不同的系统采用不同的方案。如果是系统对于实时性和可靠性的要求极高(硬实时系统),不能容忍一点延时或者一次分配失败,当然需要采用静态分配方案,也就是在程序编译时所需要的内存都已经分配好了。例如,火星探测器上面的嵌入式系统就必须采用静态分配的方案。另外,WindRiver公司的一款专门用于汽车电子和工业自动化领域的实时操作系统OSEKWorks中就不支持内存的动态分配。在这样的应用场合,成本不支持内存的动态分配。在这样的应用场合,成本不是优先考虑的对象,实时性和可靠性才是必须保证的。当然,采用静态分配一个不可避免的总是就是系统失去了灵活性,必须在设计阶段就预先知道所需要的内存并对之作出分配;必须在设计阶段就预先考虑到所有可能的情况,因为一旦出现没有考虑到的情况,系统就无法处理。这样的分配方案必须导致很大的浪费,因为内存分配必须按照最坏情况进行最大的配置,而实际上在运行中可能使用的只是其中的一小部分;而且在硬件平台不变的情况下,不可能灵活地为系统添加功能,从而使得系统的升级变得困难。
大多数的系统是硬实时系统和软实时系统的综合。也就是说,系统中的一部分任务有严格的时限要求,而另一部分只是要求完成得越快越好。按照RMS(Rate Monotoin Scheduling)理论,这样的系统必须采用抢先式任务调度;而在这样的系统中,就可以采用动态内存分配来满足那一部分可靠性和实时性要求不那么高的任务。采用动态内存分配的好处就是给设计者很大的灵活性,可以方便地将原来运行于非嵌入式操作系统的程序移植到嵌入式系统中,比如,许多嵌入式系统中使用的网络协议栈。如果必须采用静态内存分配,移植这样的协议栈就会困难得多。另外,采用动态内存分配可以使设计者在不改变基本的硬件平台的情况下,比较灵活地调整系统的功能,在系统中各个功能之间作出权衡。例如,可以在支持的VLAN数和支持的路由条目数之间作出调整,或者不同的版本支持不同的协议。说到底,动态内存分配给了嵌入式系统的程序设计者在比较少的限制和较大的自由。因此,大多数实时操作系统提供了动态内存分配接口,例如malloc和free函数。
3 RTOS提供的内存分配接口
不同的RTOS由于其不同的定位,采用不同的内存分配策略。例如VRTX中,采用类似于GNU C中由Doug Lea开发的内存分配方案,即Binning算法,系统内存被分成了一些固定尺寸的内存块的算法,系统内存被分成了一些固定尺寸的内存块的集合。这种方法的优点是查找速度快而且不会产生内存碎片。但是,它的缺点也很明显,就是容易造成浪费,因为内存块的尺寸只有有限个,分配时只能取较大的内存块来满足一个较小的需求,累积起来,浪费就很大了;而且操作系统管理这样一个内存分配表也是一个很大的负担。
下面详细介绍一下我们常用的RTOS——美国风河公司(WindRiver)的VxWorks中采用的内存分配策略。VxWorks的前身就是VRTX,据说VxWorks的名称来自make vrtx work。
VxWorks的内存管理函数存在于2个库中;memPartLib(紧凑的内存分区管理器)和memLib(完整的内存分区管理器)。前者(memPartLib)提供的工具用于从内存分区中分配内存块。该库包含两类程序,一类是通用工具创建和管理内存分区并从这些分区中分配和管理内存块;另一类是标准的malloc/free程序提供与内存分区的接口。系统内存分区(其ID为memSysPartId是一个全局变量)在内核初始化时由usrRoot调用memInit创建。其开始地址为RAM中紧接着VxWorks的BSS段之后,大小为所有空闲内存,如图1所示。
当创建其它分区时,一般需要先调用malloc从系统内存分区中分配一段内存才能创建。内存分区的结构定义为mem_part,包含1个对象标记,1个双向链表管理空闲块,1个信号量保护该分区及一些统计信息,如总尺寸、最大块尺寸、调试选项、已分配的块数、已分配的尺寸等。其语句如下:
typedef struct mem_part {
OBJ_CORE objCore; /*对象标志*/
DL-LIST freeList; /*空闲链表*/
SEMAPHORE sem; /*保护分区的信号量*/
Unsigned totalWords; /*分区中字(WORD)数*/
Unsigned minBlockWords; /*以字为单位的最小块尺寸*/
Unsigned options; /*选项,用于调试或统计*/
/*分配统计*/
unsigned curBlocksAllocated; /*当前分配的块数*/
unsigned curWorkdAllocated; /*当前分配的字数*/
unsigned cumBlockAllocated; /*累积分配的块数*/
unsigned cumWordsAllocated; /*累积分配的字数*/
}PARTITION;
一般系统中只有1个内存分区,即系统分区,所有任务所需要的内存直接调用malloc从其中分配。分配采用First-Fit算法(注意这种算法容易导致大量碎片),通过free释放的内存将被聚合以形成更大的空闲块。这就是VxWorks的内存分配机理。分配时可以要求一定的对齐格式。注意,不同的CPU架构有不同的对齐要求。为了优化性能,malloc返回的指针是经过对齐的,为此的开销随构不同而不同。例如,68K为4字节对齐,开销8字节;SPARC为8字节对齐,开销12字节;MIPS为16字节对齐,开销12字节;I960为16字节对齐,开销16字节。
MemLib库中提供了增强的内存分区管理工具,并且增加了一些接口,而且可以设置调试选项。可以检测2类错误:①尝试分配太大的内存;②释放内存时发现坏块。有4种错误处理选项,当发生错误时记录消息或挂起任务。
但是,使用动态内存分配malloc/free时要注意到以下几方面的限制。①因为系统内存分区是一种临界资源,由信号量保护,使用malloc会导致当前调用挂起,因此它不能用于中断服务程序;②因为进行内存分配需要执行查找算法,其执行时间与系统当前的内存使用情况相关,是不确定的,因此对于有规定时限的操作它是不适宜的;③由于采用简单的最先匹配算法,容易导致系统中存在大量的内存碎片,降低内存使用效率和系统性能。
针对这种情况,一般在系统设计时采用静态分配与动态分配相结合的方法。也就是对于重要的应用,在系统初始化时分配好所需要的内存。在系统运行过程中不再进行内存的分配/释放,这样就避免了因内存的分配释放带来的总是。而且在系统初始化,因为没有内存碎片,对于大的内存块的需求容易满足。对于其它的应用,在运行时进行动态内存分配。尤其是某些应用所要求的大量固定尺寸的小内存块,这时就可以采用一次分配多次使用的内存分配方案。下面详细介绍这种内存分配方案及其应用场合。
4 一次分配多次使用的内存分配方案
在嵌入式系统设计中,经常有一些类似于内存数据库的应用。这些应用的特点是在内存中管理一些树,比如以太网交换机中的MAC地址表、VLAN表等,或者路由器中的路由表。这些树是由许多相同尺寸的节点组成的。这样,就可以每次分配一个大的缓冲池,比如包含多个内存单元的数组,每个内存单元用于1个节点。我们用一个空闲链表来管理该数组中的空闲内存单元。每次程序需要分配内存以创建1个新的节点时,就从空闲链表中取1个单元给调用者。程序删除节点并释放内存时,将释放的内存单元返还给空闲链表。如果链表中的空闲内存单元取空了,就再次调用malloc从系统内存中分配一个大的内存块作为新的缓冲池。采用这样一种方案主要有如下优点:①减少了malloc/free的调用次数,从而降低了风险,减少了碎片;②因为从缓冲池中取一个内存单元是时间确定的(当然,如果缓冲池耗尽从而需要重新调用malloc分配除外),因此它可以用于严格时限的场合从而保证实时性;③它给用户以自由来添加一些用于内存分配和释放的调试函数以及一些统计功能,更好地监测系统中内存的使用情况。
这种方案必然涉及到一个缓冲池的结构。一般缓冲池的结构由以下几部分组成:单元尺寸、块尺寸(或者单元数目)、缓冲池指针、空闲链表、用于统计和调试的参数等。对缓冲池的操作包括创建缓冲池、释放缓冲池、从缓冲池中分配1个内存单元、释放内存单元回缓冲池等。下面举2个例子说明一下该方案的具体使用情况。
4.1 Intel交换机驱动程序中内存分配
在以Intel的交换芯片为基础的交换机方案中,因为采用的是软件地址学习的方式,需要在内存中维护许多数据,如MAC地址表的软拷贝、VLAN表、静态单播地址表、组播地址表等。这些表都是由一些树组成,每个树由一些固定尺寸的节点组成。一般每个节点几十个字节,每棵树的节点数是可增长的,少则几十,最多可到16K个节点。因此,很适合于采用该方案,具体的实现如下:
(1)缓冲池结构BlockMemMgr
typedef struct{
MemSize data_cell_size; /*数据单元的尺寸*/
MemSize block_size; /*块尺寸*/
/*下面的变量为预定义的每个管理器最多包含的块数,如64
MAX_BLOCKS_OF_MEM_SIZE*/
Unsigned short blocks_being_used;/*已使用的块数*/
Void mem_ptr[PAX_BLOCKS_OF_MEM_SIZE];
/*块数组*/
SLList free_data_cells_list; /*空闲链表*/
}BlockMemMgr;
结构中的参数包括:单元尺寸、块尺寸、已用块数、所有块的地址、空闲链表(单向链表)。
(2)缓冲池的管理函数
block_mem_create:创建块内存管理器,参数包括内存指针(如为NULL,表示自己分配)、块尺寸、单元尺寸、返回管理器指针。
过程如下:
①检验参数合法性。
②单元尺寸4字节对齐,计算每个块中的单元数。对内存指针进行4字节对齐或者分配内存指针。
③初始化结构BlockMemMgr,包括单元尺寸和块尺寸。设置第1个内存块的指针。如果内存是外来的,设置块已用标志(已用为0),表示不能增加块;否则,已用块数设为1。
④创建空闲链表,将块内所有单元添加到链表中,最后一个单元处于链表的最前面。
⑤返回BlockMemMgr。
block_mem_destroy:解构一个块内存管理器,释放它所分配的所有内存,调用者负责外部内存的释放。参数为BlockMemMgr。返回成功失败标志。
①参数合法性检测。
②删除单向链表(设链表指针为NULL)。
③如果块是动态分配的,释放它们。
④释放结构BlockMemMgr。
block_malloc:从块内存管理器中分配1个单元
⑤释放结构BlockMemMgr
block_malloc:从块内存管理器中分配1个单元。参数为BlockMemMgr,返回数据单元指针。
①参数合法性检测。
②判断空闲链表是否为空(是否为NULL)。如果为空,判断是否可以动态分配块,如果不能,返回失败;如果可以动态分配块,则分配1个块,执行与block_mem_create一样的操作。
③从空闲链表中分配第1个单元,返回其指针。
注意这里有一个小技巧,即数据单元在空闲时其中存放空闲链表的节点信息,而分配后则存放数据内容。
block_free:释放1个数据单元,返回块内存管理器。小心不要对1个单元释放2次。参数为BlockMemMgr和单元指针。
①参数合法性检测。
②地址比较,判断数据单元属于哪个块。
③判断数据单元的内容是否为空闲链表节点信息(也就是块内某单元的地址),从而确定是否为2次释放。
④将该数据单元插入到空闲链表的前面。
⑤引用该单元的指针设为NULL。
内存管理代码遵守如下约定:①管理的内存是实际可写的内存;②分配内存是4字节或32位对齐;③block_malloc、block_free在中断级调用是部分安全的,除非BLOCK中已经没有空闲CELL,需要重新调用malloc分配新的BLOCK(而malloc和free就不是安全的,因为其中使用了信号量和搜索算法,容易引起中断服务程序阻塞)。当然,block_mem_create和block_mem_destroy必须在进程级调用。
4.2 TMS中的内存分配
TMS是WindRiver公司为可管理式交换机推出的开发包。它用用IDB来管理各种协议的数据,比如STP和GVRP等。为了支持IDB,它建立了自己的缓冲池管理方案,程序在bufPoolLib.c中。该程序包含用于缓冲池管理的函数,这些函数允许从1个池中分配固定数目和大小的缓冲区。通过预先分配一定数目固定大小的缓冲区,避免了反复的小的内存块分配/释放相关联的内存碎片和浪费。既然它从1个单一的块中分配缓冲池,也比对每一个缓冲区执行1次分配有更高的空间效率。模块对每个缓冲区加上1个标记(MAGIC),释放时会检查标记。模块给用户提供分配和释放操作定义回调函数的能力。这样可以做到自动的对象创建和解构,同时允许由多个缓冲池分配的成员组成的对象做为1个单一的实体删除。这类似于C++中自动的对象构建和解构,不过是用C语言并且没有堆栈分配的负担。模块既允许从堆栈中分配缓冲池(通过calloc),也可以在用户分配的空间中创建它们。模块用1个单向链表来维护未分配的缓冲区,但不跟踪已分配的缓冲区。模块并不是任务安全的,用户需要用信号时来保护缓冲池。
(1)缓冲池结构
typedef struct
{
ulong_t magic; /*用于一致性检测的特殊标记*/
Boolean localAlloc; /*内存是否在创建缓冲区时分配*/
SL_LIST freeList; /*空闲链表*/
Void store; /*缓冲区指向的内存指针*/
STATUS(*createFn)(void*,ulong_t argl); /*创建缓冲区时的回调函数指针*/
STATUS(*destroyFn)(void*,ulong_targl);/*释放缓冲区时的回调函数指针*/