电子专业实习报告

第一,我从小就对这种小制作很感兴趣,那时不懂焊接,却喜欢把东西给拆来装去,但这样一来,这东西就给废了,电子专业实习报告。现在电工电子实习课正是学习如何把东西“装回去”。每次完成一个步骤,我都像孩子那样高兴,并且很有“成就感”。第二,制作收音机实习是以学生自己动手,掌握一定操作技能并亲手设计、制作、组装与调试为特色的。它将基本技能训练,基本工艺知识和创新启蒙有机结合,培养我们的实践能力和创新精神,。作为信息时代的大学生,作为国家重点培育的高技能人才,仅会操作鼠标是不够的,基本的动手能力是一切工作和创造的基础和必要条件。

通过三个星期的学习,我觉得自己在以下几个方面与有收获:

一、对电子工艺的理论有了初步的系统了解。我们了解到了焊普通元件与电路元件的技巧、印制电路板图的设计制作与工艺流程、收音机的工作原理与组成元件的作用等。这些知识不仅在课堂上有效,对以后的电子工艺课的学习有很大的指导意义,在日常生活中更是有着现实意义。

通过这一次的电子器件实习我不仅对成功有了更大向往,而且对于失败我也明白坦然的好处和换个角度想的态度.一切的技术与经验都是在实践中一点一滴的积累来的,这次我又知道了不少电路元件与如何安装的知识。实习是培养我们动手能力的一个好机会,通过这次的工艺实习,我们学会了基本的焊接技术,收音机的检测与调试,知道了电子产品的装配过程,我们还学会了电子元器件的识别及质量检验,知道了整机的装配工艺,这些为我们的培养动手能力及严谨的工作作风,也为我们以后的工作打下了良好的基矗总之,在实习过成中,要时刻保持清醒的头脑,出现错误,一定要认真的冷静的去检查分析错误。

二、对自己的动手能力是个很大的锻炼。实践出真知,纵观古今,所有发明创造无一不是在实践中得到检验的。没有足够的动手能力,就奢谈在未来的科研尤其是实验研究中有所成就。在实习中,我锻炼了自己动手技巧,提高了自己解决问题的能力。比如做收音机组装与调试时,好几个焊盘的间距特别小,稍不留神,就焊在一起了,但是我还是完成了任务。

三 对于在工程实际中应有的心理素质有了提高。在完成像收音机的装配的实习任务时,我认识到在困难面前只有脚踏实地的去做才能取得最终的胜利。收音机的元件特别多也特别杂,如若在遇到这种状况是就晕头转向,轻言放弃,那么你的收音机永远都不会响。只有按照步骤一步一步的去做,才能将整个任务完成。自信很重要,只有相信自己的实力,一鼓作气才能更快更好的完成实习任务。

四 团队合作很总要。

在完成实习任务的时候,有时需要与伙伴们共同完成,那样,即节省了大量的时间,又能在交流中吸收到他人的好的思想,将工作做得更好。

五 自我总结:通过这次制作收音机实习,我深刻的认识到了,理论知识和实践相结合是教学环节中相当重要的一个环节,只有这样才能提高自己的实际操作能力,并且从中培养自己的独立思考、勇于克服困难,实习报告《电子专业实习报告》。

这次实习我真的很高兴,主要是自己亲自参与并弄好了一个收音机。虽然是第一次自己亲手做实验,但是我在这次实习中认识到,只有自己亲手做了,才会明白其实很多事是很简单的,只要你敢做,就没有你做不到的事。谁都有第一次,谁都会认为第一次是最难的,我们应勇敢的 迈出第一步,成功就会离你进一步,一个人,若要获得成功,必须拿出勇气,付出努力、拼搏、奋斗。成功,不相信眼泪;
成功,不相信颓废;
成功不相信幻影,未来,要靠自己去打拼!

----------------------

一、实习目的:

生产实习是电子信息工程专业学生不可缺少的实践环节,本次实习是在学生学完所有基础课及技术基础课和大部分专业课后进行。实习的目的在于通过在网络和通信公司、企业广域网和内联网(internet/intranet)或实习基地的生产实践,使学生能将所学的理论和实践相结合,巩固消化所学的知识,培养实践操作技能,建立网络、信息系统集成概念,并为后继课教学及毕业环节打下基础。

二、实习要求:

1.了解计算机通讯网络及企业内联网的构成和配置,掌握所接触信息系统(软硬件)的工作原理,结构,安装,及故障识别方法,熟悉基本网络测试工具的使用方法和系统规划软件和网络数据库的使用方法。

2.了解服务器、交换机、hub、网卡、光纤和粗细缆的功能,安装,维护及使用方法,了解它们选型的一般原则及对应的网管软件使用等。

3.了解所在企业信息流的组成,即供应链、产品链,资金链、信息链的性质和用途,初步形成企业信息系统和计算机通讯网络的整体概念。

4.通过讲座、参观,了解通讯及网络技术、企业信息管理系统、电子商务的发展情况、使用情况、新成果新技术的应用情况。

三、实习内容:

讲座(1)金杯cims

时间、地点、报告人、单位、报告内容、专业认识和体会

讲座(2)大显网络集成工程建设

时间、地点、报告人、单位、报告内容、专业认识和体会

讲座(3)铁通光纤数据通信、网络设计

时间、地点、报告人、单位、报告内容、专业认识和体会

注:侧重内容:通信设备、方案设计、设备选型、组网、内容总结、心得实习单位(1):沈阳铁通公司

时间、地点、参观单位简介、参观过程、情况总结、心得

侧重内容:局域网的组成、光纤通信

实习单位(2):大显网络工程公司

时间、地点、参观单位简介、参观过程、情况总结、心得

侧重内容:企业生产流程、控制网和管理网集成硬件平台、软件平台、企业信息管理系统软件结构、功能、实现、应用情况

注:

(1) 实习报告分为封皮和实习报告正文(封皮应表明专业、班级、学号、姓名,报告正文如果较长,可以加目录;也可以不加,同学们可以自行选择)

(2) a4纸,正文小四号字,宋体,标题四号字,加粗,单倍行距

(3) 讲座报告和实习单位分开写

(4) 字数限制在8页以上

(5) 星期五(9月16号)下班前各班将实习报告盒实习笔记交到8#实验楼316或311处,交给各班负责的实习老师;交报告前,请各班学委清点人数,标明未交报告的同学名单

实习单位(3):沈阳汽车制造厂

时间、地点、参观单位简介、参观过程、情况总结、心得

注:侧重内容:企业生产流程、控制网络、管理网络、企业生产信息管理集成系统软件结构、功能、实现、应用情况。

的来说,我对这门课是热情高涨的。第一,我从小就对这种小制作很感兴趣,那时不懂焊接,却喜欢把东西给拆来装去,但这样一来,这东西就给废了。现在电工电子实习课正是学习如何把东西“装回去”。每次完成一个步骤,我都像孩子那样高兴,并且很有“成就感”。第二,制作收音机实习是以学生自己动手,掌握一定操作技能并亲手设计、制作、组装与调试为特色的。它将基本技能训练,基本工艺知识和创新启蒙有机结合,培养我们的实践能力和创新精神,。作为信息时代的大学生,作为国家重点培育的高技能人才,仅会操作鼠标是不够的,基本的动手能力是一切工作和创造的基础和必要条件。

通过三个星期的学习,我觉得自己在以下几个方面与有收获:

一、对电子工艺的理论有了初步的系统了解。我们了解到了焊普通元件与电路元件的技巧、印制电路板图的设计制作与工艺流程、收音机的工作原理与组成元件的作用等。这些知识不仅在课堂上有效,对以后的电子工艺课的学习有很大的指导意义,在日常生活中更是有着现实意义。

通过这一次的电子器件实习我不仅对成功有了更大向往,而且对于失败我也明白坦然的好处和换个角度想的态度.一切的技术与经验都是在实践中一点一滴的积累来的,这次我又知道了不少电路元件与如何安装的知识。实习是培养我们动手能力的一个好机会,通过这次的工艺实习,我们学会了基本的焊接技术,收音机的检测与调试,知道了电子产品的装配过程,我们还学会了电子元器件的识别及质量检验,知道了整机的装配工艺,这些为我们的培养动手能力及严谨的工作作风,也为我们以后的工作打下了良好的基矗总之,在实习过成中,要时刻保持清醒的头脑,出现错误,一定要认真的冷静的去检查分析错误。

二、对自己的动手能力是个很大的锻炼。实践出真知,纵观古今,所有发明创造无一不是在实践中得到检验的。没有足够的动手能力,就奢谈在未来的科研尤其是实验研究中有所成就。在实习中,我锻炼了自己动手技巧,提高了自己解决问题的能力。比如做收音机组装与调试时,好几个焊盘的间距特别小,稍不留神,就焊在一起了,但是我还是完成了任务。

三 对于在工程实际中应有的心理素质有了提高。在完成像收音机的装配的实习任务时,我认识到在困难面前只有脚踏实地的去做才能取得最终的胜利。收音机的元件特别多也特别杂,如若在遇到这种状况是就晕头转向,轻言放弃,那么你的收音机永远都不会响。只有按照步骤一步一步的去做,才能将整个任务完成。自信很重要,只有相信自己的实力,一鼓作气才能更快更好的完成实习任务。

四 团队合作很总要。

在完成实习任务的时候,有时需要与伙伴们共同完成,那样,即节省了大量的时间,又能在交流中吸收到他人的好的思想,将工作做得更好。

五 自我总结:通过这次制作收音机实习,我深刻的认识到了,理论知识和实践相结合是教学环节中相当重要的一个环节,只有这样才能提高自己的实际操作能力,并且从中培养自己的独立思考、勇于克服困难。这次实习我真的很高兴,主要是自己亲自参与并弄好了一个收音机。虽然是第一次自己亲手做实验,但是我在这次实习中认识到,只有自己亲手做了,才会明白其实很多事是很简单的,只要你敢做,就没有你做不到的事。谁都有第一次,谁都会认为第一次是最难的,我们应勇敢的 迈出第一步,成功就会离你进一步,一个人,若要获得成功,必须拿出勇气,付出努力、拼搏、奋斗。成功,不相信眼泪;
成功,不相信颓废;
成功不相信幻影,未来,要靠自己去打拼!

实 习 报 告

班 级:姓 名:学 号:

一、概况

1、实习起止时间:2011年1月13日至2011年2月13日。

2、实习地点:广东德豪润达电气股份有限公司珠海制造中心

3、公司名称:广东德豪润达电气股份有限公司

4、公司简介:

广东德豪润达电气股份有限公司成立于用电器产品开发、设计、制造和销售的企业。公司的产品全部销往美国、加拿大和欧洲等发达国家和地区,是珠海市最重要的出口创汇企业之一。25日,公司2600康发展提供了强大动力。研发能力、制造能力和全球营销能力,23000余人。被广东省授予“优秀民营企业”和珠海市“优秀民营企业”称号,也是珠海市唯一获“广东省外向型民营先进企业突出贡献奖”的企业。度在国家商务部公布的全国进出口额及出口额民营企业百强中,第三十一位。

在日趋激烈的市场竞争中,公司坚持“以创新引导需求,以速度领先市场,以质量赢取信任,以成本推动发展”的经营理念。围绕科研创新能力、一体化的制造能力、成本控制能力和全球市场销售能力等四大核心竞争力,懈努力,德豪润达现已跻身于全球小家电主要供应商的前列。我们的目标是“成为全球最具竞争力的智能型家用品供应商”。我们秉承为用户“提供最优质产品,提供最优质服务”的经营宗旨,以强大的开发和制造能力服务于全球客户,固的战略同盟。

我们尊重人、良好的个人成长机会和空间。a股在深交所成功上市作为行业内具有影响力的制造商,十余家下属工厂和控股子公司,与众多国际知名品牌、

1996年,是一家专业从事智能化家(股票代码:002005)德豪润达拥有强大的 全球化公司形成了牢为每一位员工提供2004年6现有员工2004年月万,为公司长远健出口额名列全国经过多年的不

并为所有员工创造良好的工作和发展环境,

5、实习目的意义:

生产实习是电子信息工程专业不可缺少的实践环节,实习的目的在于通过网络或实习基地的实践使自己将所学理论与实践相结合,巩固消化所学知识,培养实践操作技能,建立网络收集概念,给自己制定一个奋斗目标,并为今后打下基础。

二、实习具体内容(1)了解过程

起初,刚进入车间的时候,作环境也不怎么好,艰苦的环境中工作员给我安排工作任务,按照技术员教我的方法,注意操作流程及有关注意事项等。上加工产品,环境。

作为初次到社会上去工作的学生来说,情况的了解都是甚少陌生的。规程及工作中的相关注意事项等都不是很了解,们的员工手册,我对车间的情况及开机生产产品、两班制(a、b早上8:30。车间的所有员工都必须遵守该上、下班制度。(2)摸索过程 对车间里的环境有所了解熟悉后,作期间每天按时到厂上班,会强调工作中的有关事项,一下工作前的准备工作,

车间里的一切对我来说都是陌生的。呈现在眼前的一幕幕让人的心中不免有些茫然,1个月。第一天进入车间开始工作时,分配给我的任务是简单加工一种名叫黑色套管的产品,运用操作工具开始慢慢学着加工该产品,毕业实习的第一天,一开始我对车间里的各项规章制度,向小组里的员工同事请教了解工作的相关事项,加工产品等有了一定的了解。),两班的工作时间段为:早上上班工作之前先到指定地点等待小组组长集合员工开同时给我们分配工作任务。于是我便到我们小组的工具存放区找来一些工作中需要

所在小组的组长、我就在这初次的工作岗位于是我便阅读实习单位下发给我8:30至晚上8明确工作任务后,车间里的工即将在这较在加工的同时安全生产操作车间的工作实行30;晚上8技术我30至工体验首次在社会上工作的感觉。在工作的同时慢慢熟悉车间的工作对社会的了解以及对工作单位各方面通过他们的帮助,班::

开始有些紧张的心开始慢慢平静下来,则要做

用到的相关用具(比如:胶料袋子、脱模剂、产品标识单等)。在机台位置上根据员工作业指导书上的操作流程进行正常作业,我运用工作所需的用具将机器生产出的产品加工包装好,并将加工包装好的产品贴好产品标识单存放在指定的位置。另外在工作中,机器生产出的产品有时会出现异常(比如:产品出现缺胶、料花、气纹、色差等)。出现上述情况时,要及时告知小组组长、技术员,让他们帮助解决出现的问题,小组长、技术员通过对机器的调节让生产出的产品恢复正常,符合检验的要求。

在工作期间有些产品的加工难度较大。率不高,加工出来的产品质量也不怎么的。工同事交流,向他们请教简单快速的加工方法与技巧。技巧慢慢学着加工这有难度的产品,择适合的加工工具,也有利于提高工作的效率。出生产、加工产品的有效方法和技巧。有时在开关机生产、加工产品时,对产品应该怎样包装不明白,此时,方式,另外也可以询问评管品。(3)实际操作

经过一段时间开机生产、加工包装产品的学习,我对车间产品的生产、

加工包装的整个流程已有了一个较详细的了解与熟悉。较熟悉了,对不良产品的识别力也有所提高了,提高。上班期间,听从小组长的安排,接受小组长分配的工作任务,在自己的工作区认真地进行作业。当出现一些小的问题和困难时,当问题较大自己独自难以解决时,解决。在他们的帮助下,出现的问题很快就被解决了,方法与技巧去处理些稍简单的问题,处理问题的过程中也不断摸索出解决机器小故障的方法途径。作时的自信心不断增强,对工作的积极性也有所提高。在所开的机器不出现大的故障的情况下,努力提高工作的效率。尽量让生产出的产品数量达到班产要求的数量,刚开始加工起来还真棘手的,加工效让人苦恼的,于是我便向小组里的员运用他们介绍的操作方法从中体会加工产品的效果。同时在加工中选在平时工作过程中也要不断摸索我便向员工同事学习,向他们请教正确的加工包装(质检员),按评管提供的要求进行生产、加工包装产对有些常加工的产品也比生产、加工产品的效率也在不断先自己尝试着去解决,而则向小组长、技术员反映情况,请求他们帮助我有时也学着运用他们的慢慢提高自己解决处理问题的能力。在解决这样从而让我在工

在确保产品质量的基础上尽自己的以便完成

生产任务。每次下班之前,将自己工作区域内的卫生打扫干净,垃圾放入垃圾袋中并放到相应的位置,把工作桌面和地面上的物品用具收拾摆放好。就这样一天的全部工作内容也就完成了,嘿!这工作任务也较艰巨的啊!

三、收获体会

作为大学生涯的最后一课,实习不仅重要更有其独特性,正是通过实习,让我逐渐掌握怎样把学校教给我的理论知识恰当地运用到实际工作中,让我慢慢褪变学生的浮躁与稚嫩,真正地接触这个社会,渐渐地融入这个社会,实现我迈向社会独立成长的第一步。

站在时间的这一端倒回去看,一个月的实习经历教会我许许多多的东西,无论是对我以后的职业生涯还是对于我的人生来说,都是有益的。

感触挺深的,总结起来,那就是要认认真真做事,对自己负责。

用公司老总的话来说就是:
从依附型向独立型转变,坚守原则去执行; 从服从型向主动型转变,积极主动去执行;
从个体型向团队型转变,协同一致去执行;
从避责型向守责型转变,承担责任去执行;
从封闭型向分享型转变,开放心态去执行。

在这一个月实习的日子里,明显能够比较实际的感受到公司与学校氛围的不一样,包括工作精神、态度以及人际间的交往等等,要懂得虚心向前辈请教,人才可以不断地进步。

可能因为这次实习时间较短,对于公司企业里人际的感受不是特别强烈,但还是学到了一些东西。人是要坦诚相待,和睦相处,其实为人处事也是一门艺术,它的能动性很大,而且也反映一个人的素质或能力。

企业文化求实、创新、诚信、共赢,科学技术是第一生产力,产品质量是企业的生命,工作是一种追求生命意义的过程,在事业卓然有成时,工作的空间更应该融入自我,友达让你我站在国际的窗口眺望世界。

《 电子专业认知实习报告 》

在黄老师和石老师的带领下我们来到了武汉集成电路设计工程技术研究中心,对我们专业的认识以及就业方向有了更深的了解;
通过张晓东老师的前沿介绍和具体的分析,加深了我对电子专业的前沿、前景有了更多的信心和压力。

武汉集成电路设计工程技术研究中心武汉集成电路设计工程技术研究中心成立于2003年9月,是由武汉市科技局、武汉东湖新技术开发区、华中科技大学及华中曙光软件园有限公司等共同出资设立的具有独立法人资格的企业。中心作为集成电路设计武汉产业化基地的核心力量,是华中地区唯一由国家投入八千万元资金培养集成电路人才的国家级人才培养基地,拥有国家投入用于集成电路人才培养的软件与硬件设备平。在模拟集成电路、射频集成电路、VLSI系统级芯片等ASIC设计上具有丰富的研究经验和成果。中心与华中科技大学IC设计中心、电子科学与技术系保持着密切的合作关系,世界著名EDA厂商为中心提供全方位的技术支持与培训服务。

在工作人员的带领下我们参观了研究中心的主机房等办公场所,感觉学校所学的跟工作岗位的规模以及形式都有很大的区别。学校学的是基础,岗位的实践才是提升。

随着时代的发展,人们已经越来越依赖各种各样的电子产品,电子产品也已经在潜移默化的影响着人们的生活方式。难以想象没有电脑,没有手机的生活。在这个发展迅速日新月异的时代,电子产品的更新换代的周期也变得越来越短暂,或许现在是高端的电子产品,几年后,甚至几个月后,就能进入普通百姓的日常生活。而作为以为电子科学与技术专业的学生,我们还需要加强对电子科学与技术学科的认识,应该努力学习专业知识,为以后继续深造夯实基础,同时也要关注本专业的就业方向,及时了解就业信息,为将来学有所成立足社会做好准备。

电子科学与技术是现代电子科学的心脏和基础,也是国家重点发展的学科之

一。本学科的发展状况是衡量一个国家高技术水平的重要标志,目前国家急需电子科学与技术专业的高级人才。该专业以电子器件及其系统应用为核心,重视器件与系统的交叉与融合,面向微电子、光电子、光通信、高清晰度显示产业等国民经济发展需求,培养在通信、电子系统、计算机、自动控制、电子材料与器件等领域具有宽广的适应能力、扎实的理论基础、系统的专业知识、较强的实践能力、具备创新意识的高级技术人才和管理人才,并掌握一定的人文社会科学及经济管理方面的基础知识,能从事这些领域的科学研究、工程设计及技术开发等方面工作。本专业重视外语能力、计算机应用能力、研究开发与设计能力的全面培养,为培养高水平和高素质的高级工程人才打下了可靠的基础。实验教学是培养学生实践能力和创新能力的基础,本专业实验室的建设应以培养学生的应用能力、设计能力和创新能力为出发点。

学生主要修学内容:电路基础、计算机结构与逻辑设计、电子科学与技术学科概论、信号与系统、电子电路基础、微机系统与接口、电磁场理论、固体物理基础、半导体物理、现代光学基础、信息电子技术中的场与波、光电子物理基础、电子器件、VLSI设计基础、显示技术、光电子技术、微波毫米波电子学、光纤通信、数字信号处理、半导体集成电路、嵌入式系统概论等。由于专业需要对如编程,外语等其它学科有一定的了解,因此对于学生的要求比较的高,要求精通多个专业,这需要学生们加强自主学习,提高自身的能力水平。

电子科学与技术是一们高深的学科,仅仅是本科的专业知识也是远远不够的,如果想在这个领域中有更好的发展,就应该继续深造,如有机会,能在国外的著名大学学习,就能获得更前沿的科技动态。

在张老师的细心讲解下,我们对ARM的就业方向以及专业认知和市场的技术需求有了更好的认识,认识到我们在学校应该学什么、怎么学,解决了我们对专业的迷茫性和盲目性。更加理解了集成电路在市场的份额量及重要性。

集成电路是一种微型电子器件或部件。采用一定的工艺,把一个电路中所需的晶体管、二极管、电阻、电容和电感等元件及布线互连一起,制作在一小块或几小块半导体晶片或介质基片上,然后封装在一个管壳内,成为具有所需电路功能的微型结构;
其中所有元件在结构上已组成一个整体,这样,整个电路的体积大大缩小,且引出线和焊接点的数目也大为减少,从而使电子元件向着微小型化、低功耗和高可靠性方面迈进了一大步。集成电路的范围并不仅仅只是cpu这一方面。集成电路具有体积小,重量轻,引出线和焊接点少,寿命长,可靠性高,性能好等优点,同时成本低,便于大规模生产。它不仅在工、民用电子设备如收录机、电视机、计算机等方面得到广泛的应用,同时在军事、通讯、遥控等方面也得到广泛的应用。用集成电路来装配电子设备,其装配密度比晶体管可提高几十倍至几千倍,设备的稳定工作时间也可大大提高。集成电路按其功能、结构的不同,可以分为模拟集成电路、数字集成电路和数/模混合集成电路三大集成电路类。模拟集成电路又称线性电路,用来产生、放大和处理各种模拟信号(指幅度随时间变化的信号。例如半导体收音机的音频信号、录放机的磁带信号等),其输入信号和输出信号成比例关系。而数字集成电路用来产生、放大和处理各种数字信号(指在时间上和幅度上离散取值的信号。例如3G手机、数码相机、电脑CPU、数字电视的逻辑控制和重放的音频信号和视频信号)。可见集成电路在各种小电器中也有广泛的应用。集成电路设计是这个学科的一个重点,如能在某些领域有一片立足之地,学精学好,将会有很好的发展前途。因而集成电路设计是一个很好的学习方向。

可以说ARM是电子专业的一个很好的就业方向和前景,是一种发展的模式和未来的一种走向。例如消费电子、汽车电子、医疗、国防等等随处可见。如今的市场拼的是科技、拼的是人才。

从近年来的就业情况来看,本专业属于理工科的热门专业,电子公司、通信公司都欢迎本专业的毕业生。攻读研究生进一步深造,会为将来的发展提供更雄厚的知识资本。另外,出国深造是一个很好的选择,国外的相同专业同样有很大的发展空间。还可以自主创业,从事计算机、IT行业工作。

该专业毕业生具有宽领域工程技术适应性,就业面很广,就业率高,毕业生实践能力强,工作上手快,可以在电子信息类的相关企业中,从事电子产品的生产、经营与技术管理和开发工作。主要面向电子产品与设备的生产企业和经营单位,从事各种电子产品与设备的装配、调试、检测、应用及维修技术工作,还可以到一些企事业单位一些机电设备、通信设备及计算机控制等设备的安全运行及维护管理工作。

由于信息时代的到来,据推测,在相当长的一段时间内,此类人才仍将供不应求。据调查,现阶段对于电子信息工程人才的需要量十分巨大,“电子信息工程”的专业,对缓解当前该类人才的供需矛盾是非常必要的。

电子信息工程专业人才已经成为信息社会人才需求的热点。电子信息产业是一项新兴的高科技产业,被称为朝阳产业。根据信息产业部分析,“十五”期间是我国电子信息产业发展的关键时期,预计电子信息产业仍将以高于经济增速两倍左右的速度快速发展,产业前景十分广阔。

未来的发展重点是电子信息产品制造业、软件产业和集成电路等产业;
新兴通信业务如数据通信、多媒体、互联网、电话信息服务、手机短信等业务也将迅速扩展;
值得关注的还有文化科技产业,如网络游戏等。目前,信息技术支持人才需求中排除技术故障、设备和顾客服务、硬件和软件安装以及配置更新和系统操作、监视与维修等四类人才最为短缺。此外,电子商务和互动媒体、数据库开发和软件工程方面的需求量也非常大。

这次实习印象最深的就是张老师给我们做的生动的演讲,让我们了解到专业的压力和前景,有前景就有竞争,有竞争就有压力。我们深刻得认识到,对于电子科学与技术专业毕业的学生,具有宽领域的工程技术适应性,就业面很广,就业率较高,同时社会需求也蛮大的,所以对于本专业的学生而言,今后的就业前景还是挺广阔的,但是最关键的还是在于个人的发展,所以我们在学校的时候应该努力学习,学习好专业知识,掌握好专业技能,这样才是以后就业最大的资本。

电子科学与技术专业是一门具有极高技术含量的学科,本专业培养在该领域内从事各种电子材料、元器件、集成电路、乃至集成电子系统设计、制造和相应的新产品、新技术、新工艺的研究、开发等方面工作的高级工程技术人才。它的范围涵盖了许许多多的专业领域,具有广阔的就业前景。

嵌入式操作系统内存管理模拟实践

前 言

从上个世纪70年代单片机的出现到今天各种嵌入式微处理器、微控制器的广泛应用,嵌入式系统有了30多年的历史。纵观嵌入式系统的发展历程,大致经历了以下四个阶段:无操作系统阶段、简单操作系统阶段、实时操作系统阶段、面向Internet阶段。21世纪无疑将是一个网络的时代,将嵌入式系统应用到各种网络环境中去的呼声自然也越来越高。目前大多数嵌入式系统还在网络之外,随着Internet的进一步发展,以及Internet技术与信息家电、工业控制技术等的结合日益紧密,嵌入式设备与Internet的结合才是嵌入式技术的真正未来。

信息时代和数字时代的到来,为嵌入式系统的发展带来了巨大的机遇,同时也对嵌入式系统厂商提出了新的挑战。目前,嵌入式技术与Internet技术的结合正在推动着嵌入式技术的飞速发展,嵌入式系统的研究和应用产生了如下新的显著变化:1.新的微处理器层出不穷,嵌入式操作系统自身结构的设计更加便于移植,能够在短时间内支持更多的微处理器。

2.嵌入式系统的开发成了一项系统工程,开发厂商不仅要提供嵌入式软硬件系统本身,同时还要提供强大的硬件开发工具和软件支持包。

3.通用计算机上使用的新技术、新观念开始逐步移植到嵌入式系统中,如嵌入式数据库、移动代理、实时CORBA等,嵌入式软件平台得到进一步完善。

4.各类嵌入式Linux操作系统迅速发展,由于具有源代码开放、系统内核小、执行效率高、网络结构完整等特点,很适合信息家电等嵌入式系统的需要,目前已经形成了能与Windows CE、Palm OS等嵌入式操作系统进行有力竞争的局面。

5.网络化、信息化的要求随着Internet技术的成熟和带宽的提高而日益突出,以往功能单一的设备如电话、手机、冰箱、微波炉等功能不再单一,结构变得更加复杂,网络互联成为必然趋势。

6.精简系统内核,优化关键算法,降低功耗和软硬件成本。

提供更加友好的多媒体人机交互界面。

1

嵌入式操作系统内存管理模拟实践

第一章 系统概论

1.1 内存管理技术理论

内存管理是计算机编程最为基本的领域之一。在很多脚本语言中,您不必担心内存是如何管理的,这并不能使得内存管理的重要性有一点点降低。对实际编程来说,理解您的内存管理器的能力与局限性至关重要。在大部分系统语言中,比如C和C十十,您必须进行内存管理。追溯到在Apple 11上进行汇编语言编程的时代,那时内存管理还不是个大问题。您实际上在运行整个系统。系统有多少内存,您就有多少内存。您甚至不必费心思去弄明白它有多少内存,因为每一台机器的内存数量都相同。所以,如果内存需要非常固定,那么您只需要选择一个内存范围并使用它即可。不过,即使是在这样一个简单的计算机中,您也会有问题,其是当您不知道程序的每个部分将需要多少内存时。如果您的空间有限,而内存需求是变化的,那么您需要一些方法来满足这些需求:确定您是否有足够的内存来处理数据。从可用的内存中获取一部分内存。向可用内存池(pool)中返回部分内存,以使其可以由程序的其他部分或者其他程序使用。

实现这些需求的程序库称为分配程序(allocators), 因为它们负责分配和回收内存。程序的动态性越强,内存管理就越重要,您的内存分配程序的选择也就更重要。

在大部分操作系统中,内存分配由以下两个简单的函数来处理: Void *malloc(long numbytes):该函数负责分配numbytes大小的内存,并返回指向第一个字节的指针。

Void free(void* firstbyte):如果给定一个由先前的malloc返回的指针,那么该函数会将分配的空间归还给进程的“空闲空间”

Malloc_init将是初始化内存分配程序的函数。它要完成以下三件事:将分配程序标识为己经初始化,找到系统中最后一个有效内存地址,然后建立起指向我们管理的内存的指针。

malloc()的实现有很多,这些实现各有优点与缺点。在设计一个分配程序时,要面临许多需要折衷的选择,其中包括:分配的速度;回收的速度;有线程的环境 2

嵌入式操作系统内存管理模拟实践

的行为;内存将要被用光时的行为:局部缓存;簿记(Bookkeeping)内存开销;虚拟内存环境中的行为;小的或者大的对象;实时保证。

基于malloc()的内存管理的缺点:不只是我 们的内存管理器有缺点,基于malloc()的内存管理器仍然也有很多缺点,不管您使用的是哪个分配程序。对于那些需要保持长期存储的程序使用malloc()来管理内存可能会非常令人失望。如果您有大量的不固定的内存引用,经常难以知道它们何时被释放。生存期局限于当前函数的内存非常容易管理,但是对于生存期超出该范围的内存来说,管理内存则困难得多。

1.2嵌入式系统对内存管理的要求

1.快 速 性: 嵌入式系统中对实时性的保证,要求内存分配要尽可能地快。因此在嵌入式系统中,不可能采用通用操作系统中地复杂而完善地内存策略,一般都采取简单、快速地内存管理策略。

2.可 靠 性: 嵌入式内存分配地请求必须得到满足,如果分配失败可能会带来灾难性地后果。嵌入式系统应用环境千变万化,其中有一些是对可靠性要求极高地。比如,汽车地自动驾驶系统中,系统检测到即将撞车,如果因为内存分配失败而不能执行相应的操作,就会发生车毁人亡的惨剧,这是不能容忍的。

3.高 效 性: 内存分配要尽可能减少浪费。不可能为了保证满足所有的内存分配请求而将内存配置的无限大。一方面,嵌入式系统对成本的要求使得内存在其中只是一种有限得资源;另一方面,即使不考虑成本得因素,系统有限得空间决定了可配置得内存容量是很有限的。

1.3嵌入式系统的内存管理特点

许多软件使用虚拟内存,程序过大,可以交换到虚拟存储器上。然而在嵌入式系统中特别要求实时性很强的系统来说,这个功能的确不那么重要,因为这个

3

嵌入式操作系统内存管理模拟实践

机制会浪费时间,所以,嵌入式系统的应用程序还是在固定的地方运行比较好。考虑到一些CPU有这方面的特点,也可以保留虚拟存储器的代码,这样能够使得不同进程使用相同代码。如果没有了这个功能,每个程序都需要自己的运行库,在内存中就会有库的很多拷贝。其实只需把交换空间的长度设置为零,就可以关闭虚拟内存的页面换入和换出功能。对一些CPU,虚拟存储器的功能提供内存管理,防止不同程序占用相同的地址空间。而在嵌入式系统中,使用简单、绝对的地址空间,因此这种功能也不会起作用。不过这倒提供了防止误写以至于使系统崩溃的功能。很多嵌入式系统习惯使用“全局变量”,让进程共享数据。

1.4内存管理策略概述

内存管理策略大致可分为静态分配和动态分配两大类。

静态分配的可用内存大小在编译时确定。系统初始化阶段预先分配好同定数量的内存,用于存放所有需使用的对象和数据结构。程序运行过程中能且只能使用这内存。动态分配的内存在程序运行时根据需要向系统申请后获得,只有在需要的时候.才分配或归还。由于嵌入式系统的特殊性,开发人员必须在编译内核和开发应用时都参与系统的内存管理。

1.5内存管理模块策略及实现考量 1.5.1简单内存模型

设计之初。最简单直接的一种技术其实就是“不管理”,即所有静态分配在栈中的、动态分配在堆中的变量和数据结构.这二者的分配、释放,全交给编译器、链接程序和运行时库去完成,开发者只需负责合理设置系统栈、堆及任务栈。该模型的一例如图1.

4

嵌入式操作系统内存管理模拟实践

这种方法一般用于操作系统原型的设计.易于配置的、或内存相对宽裕且实时性要求不高的系统的初始设计。

1.5.2静态方式

为简单、特殊考虑或安全计算,可以只使用静态技术。

静态内存分配在程序执行前进行,效率较高;
编译时可精确预估系统内存需求状况;
所有分配动作所需时间同定且很小;
分配的内存一般不归还。外部碎片很少;
程序易测试,可靠性高。这些优点使得静态分配尤其适用于实时应用和高安全系统。

另一方面.静态分配必须考虑可能发生的最坏情况,因此往往分配比实际用量更多的内存。预先分配内存也增加了系统的启动时间。使用静态分配,常需限制系统中同时容纳的进程数,结束旧任务之后才能开始新任务。为限制容量,必须指定程序将存储的最大数据量。这些均会降低系统的可用性。要求在程序执行前就知道所需的内存类型和数量,显然缺少灵活性。

但在只采用静态分配的内存管理方式中,不仅操作系统内核本身。用户进程也必须全部采用静态分配。所以,只能通过以下几种方式设置运行前已指定了大小的任务栈:由用户传递一个静态分配的数组首地址参数给任务构造函数;
使用模板参数;
继承通用任务类。实现自己的特定任务子类,在子类构造函数中给予其静态分配的栈。

1.5.3动态方式

大部分面向过程和面向对象语言都提供在堆中创建和回收对象的动态管理机制,并在缺省状态下使用。本系统就是采用这样的方式来进行设计的。

静态分配注重效率和安全,动态分配则偏重于灵活性。它避免分配不被使用的内存,降低内存总体需求;
改善设计质量,使系统更易编写、扩展和维护:运行时间分配内存减少了系统的启动时间。

当然,灵活性也需付出代价:动态内存管理需要额外区块头部的开销;
内存分配和归还需花费处理器时间。典型情况和最坏情况下的内存需求难以估计;

5

嵌入式操作系统内存管理模拟实践

存耗尽的处理会增加代码的复杂度;
易造成内存碎片,增加内存的额外开销和不可预测性。

动态分配的内存必须由操作系统管理。通常使用的是链表法。它维持一个已分配和空闲的内存段的链表。

段是进程或是两个进程间的空洞。段链表通常按照地址排序。在进程结束或被换出时更新十分简单、直接。使用双链表结构更易于找到上一个表项以检查是否可以合并。

进程和空洞按照地址顺序存放在链表中时。在系统知道要分配的内存大小的前提下,可用于为新创建和换进的进程分配空间的算法中,首次适配不仅是最简单的,而且是最好和最快的。首次适配算法从头开始扫描存储器并选择大小足够的第一个可用块。

把进程和空洞放在不同链表中,能提高这几个算法的速度。但会提高复杂度和使内存释放速度变慢,因为被释放的内存段必须从进程链表中删除并插入空洞链表。

将空洞按大小排序将导致查看是否可以合并邻接块的操作非常费时。但若不作合并.内存将很快充满大量的、进程无法使用的碎片。所以。空洞列表一般按照内存地址排列,需要分配内存时.用首次适配算法对空洞列表进行搜索,以找出一个足够大的空洞并装入之。在必须使用动态方式的系统中,也应同时运用静态方式,把所有可以事先确定的内存用量都预先分配好.以尽量减少动态分配和回收带来的不确定性。

6

嵌入式操作系统内存管理模拟实践

第二章 功能与需求

2.1发展背景

随着嵌入式实时系统在通信领域的广泛应用,嵌入式软件的开发也越来越受到更多的瞩目,诸如VxWorks, pSOS等嵌入式实时操作系统的应用带来了人们对嵌入式软件开发的新思路和新需求,在屏蔽不同的硬件平台甚至不同操作系统之上,中间件、虚拟机等概念的引用形成了符合通信设备上应用软件不同需求的一个支撑平台,为上层的嵌入式应用软件的开发提供一种统一接口,也为嵌入式软件提供了一种新的开发模式和实现思想。在目前公司的各大主流产品的设备级入式单板软件中均采用了操作系统的封装支撑平台,该平台对应用层提供的统一的接口和支撑功能,对操作系统和不同的硬件特性进行屏蔽,使得嵌入式应用软件的开发着重于产品的具体需求和功能,该支撑平台以一致的消息机制、多任务多进程的功能划分模式、统一管理的静态、动态内存分配和定时机制、还有特定的系统控制和异常处理、出错处理等功能为应用层的开发提供了一种可遵循的实现方法和标准接口,在遵循这个统一模式的前提下,如何为嵌入式应用提供一套开发的标准模板和规范成为我们这项课题的焦点。其意义在于具备可观的经济效益和社会效益

2.2功能特点

内存管理是操作系统的中心任务之一.内存管理模块通常是操作系统内核的一部分。其主要任务是组织内存以容纳内核和各待执行进程,跟踪当前内存使用状况,在需要时为进程分配内存,其使用完毕后释放并回收内存。内存管理与操作系统和底层硬件体系结构密切相关, 不同平台的内存管理策略往往大不相同。较之普通桌面型操作系统,嵌入式操作系统中的内存管理有其独特之处:嵌入式系统受成本、设备体积和电池技术等因素制约,内存容量一般相当有限,需要高效地使用;
嵌入式系统一般都具有实时需求。至少是软实时的.内存分配、回收必须迅速.时间应可预测;
很多嵌入式系统事关重大,必须安全地运行,为避免灾难性后果,内存管理必须十分可靠。

桌面系统的微处理器大多带有存储管理单元(MMU),所以桌面操作系统如

7

嵌入式操作系统内存管理模拟实践

Windows、Linux都使用虚拟存储器,实际存储器和程序都被分成大小相同的页面,程序运行时,只将要运行的部分页面载入内存即可。MMU的作用是将虚地址映射为物理地址,保护地址越界“ 。大多数嵌入式系统的处理器没有MMU(即使系统中含有这些硬件也没采用),因此不能使用虚存管理技术,只能采用实存管理,直接访问实际的物理地址。每个任务运行前,必须为它分配足够的连续地址空间,运行时全部载入;
嵌入式操作系统没有内存保护,所有任务共享一个运行空间,任何一个任务都可能破坏其它任务的代码、数据或堆栈,甚至破坏内核代码或数据结构,导致整个系统工作异常,或使系统崩溃。由此可见,开发嵌入式系统时内存管理非常重要。内存如何分配和释放,才能保证内存碎片少,且不会导致内存丢失:每个任务的堆栈如何安排,如何保证不侵犯其它程序(包括系统程序和数据)的地址空间,才能保证程序不会破坏系统或其它程序的正常工作,这些都是内存管理所要考虑的问题。

8

嵌入式操作系统内存管理模拟实践

第三章 系统设计

3.1、程序的开发、运行平台

开发平台:linux系统的操作环境 GCC编译器

运行平台:linux系统的操作环境 cpu 500M以上

内存128MB以上

15寸显示器以上

3.2、系统处理流程

3.3、各功能模块分析实现

1./*函数原型*/ RECT *aignment(RECT *head,int application); void acceptment1(RECT *head,RECT *back1); void acceptment2(RECT *head,RECT *back1) ;

9

嵌入式操作系统内存管理模拟实践

int backcheck(RECT *head,RECT *back1); void print(RECT *head);

2./*变量声明*/ RECT *head,*back,*aign1,*p; int application1,maxblocknum; char way;

3..实现内存分配功能,选择适应算法(首次适应算法,最佳适应算法)。 基本原理分析:

1)最佳适应算法:将空闲分区按大小从大到小排序,从头找到大小合适的分区。

它从全部空闲区中找出能满足作业要求的、且大小最小的空闲分区,这种方法能使碎片尽量小。为适应此算法,空闲分区表(空闲区链)中的空闲分区要按大小从小到大进行排序,自表头开始查找到第一个满足要求的自由分区分配。该算法保留大的空闲区,但造成许多小的空闲区。主要函数算法如下:
void acceptment2(RECT *head,RECT *back1) { RECT *before,*after; int insert ; insert=0; before=head; after=head->next; if(head->next==NULL) /*如果可利用区表为空*/ { head->size=back1->size; head->next=back1; maxblocknum++; back1->next=NULL; } 10

嵌入式操作系统内存管理模拟实践

2)首次适应算法:将空闲分区按大小从小到大排序,从头找到大小合适的分区。

从空闲分区表的第一个表目起查找该表,把最先能够满足要求的空闲区分配给作业,这种方法目的在于减少查找时间。为适应这种算法,空闲分区表(空闲区链)中的空闲分区要按地址由低到高进行排序。该算法优先使用低址部分空闲区,在低址空间造成许多小的空闲区,在高地址空间保留大的空闲区。主要函数算法如下:

void acceptment1(RECT *head,RECT *back1)/*首先适应*/ {

RECT *before,*after;

int insert;

before=head;

after=head->next;

insert=0;

while(!insert) /*将回收区插入空闲区表*/

{

if((after==NULL)|| ((back1->addreaddre)&&

(back1->addre>=before->addre)))

{

before->next=back1; back1->next=after; insert=1;

}

else

{ before=before->next; after=after->next;

}

}

11

嵌入式操作系统内存管理模拟实践

4.typedef struct node /*设置分区描述器*/

5.RECT *aignment(RECT *head,int application) /*分配函数*/

6.void print(RECT *head) /*输出链表*/

7.int backcheck(RECT *head,RECT *back1) /*检查回收块的合法性,back1为要回收的结点地址*/

8.void print(RECT *head) /*输出链表*/

9.void acceptment2(RECT *head,RECT *back1) /*最佳适应,back1为回收结点的地址*/

10.void acceptment1(RECT *head,RECT *back1)/*首先适应*/

内存作为最重要的系统资源,其分配和释放策略对系统的运行效率起着至关重要的作用。系统内核和所有进程通过共享有限的物理内存来运行,一个系统的高效性与稳定性往往取决于它内存管理机制。因此,一个高效的内存管理系统不仅要能够有效地管理系统内存,减少频繁分配和回收内存而导致的内存碎片,还要尽量提高分配和回收的速度来提高系统的运行效率。此外,内存管理系统还应该保证内存分配和回收的公平性。

12

嵌入式操作系统内存管理模拟实践

第四章 系统开发

4.1、总体界面与程序流程分析

在内存初始化完成以后,内存中就常驻有内核映象(内核代码和数据)。以后,随着用户程序的执行和结束,就需要不断地分配和释放物理页面。内核应该为分配一组连续的页面而建立一种稳定、高效的分配策略。为此,必须解决一个比较重要的内存管理问题,即外碎片问题。频繁地请求和释放不同大小的一组连续页面,必然导致在已分配的内存块中分散许多小块的空闲页面。由此带来的问题是,即使这些小块的空闲页面加起来足以满足所请求的页面,但是要分配一个大块的连续页面可能就根本无法满足。Linux采用著名的伙伴(Buddy)系统算法来解决外碎片问题。

但是请注意,在Linux中,CPU不能按物理地址来访问存储空间,而必须使用虚拟地址;
因此,对于内存页面的管理,通常是先在虚存空间中分配一个虚存区间,然后才根据需要为此区间分配相应的物理页面并建立起映射,也就是说,虚存区间的分配在前,而物理页面的分配在后,

1、操作流程分析

由于本系统采用动态方式,所以首先确定内存空间分配表;
然后采用最佳适应算法或首先适应算法完成主存空间的分配,完成内存空间的回收。内存管理预 13

嵌入式操作系统内存管理模拟实践

先不将主存划分成几个区域,而把主存除操作系统占用区域外的空间看作一个大的空闲区。当作业要求装入主存时,根据作业需要的主存空间的大小查询主存内各个空闲区,当从主存空间中找到一个大于或等于该作业大小的主存空闲区时,选择其中一个空闲区,按作业需求量划出一个分区装入该作业。作业执行完后,它所占的主存分区被收回,成为一个空闲区。如果该空闲区的相邻分区也是空闲区,则需要将相邻空闲区合并成一个空闲区。

(1) 选择分配任务,输入申请空间大小,如下图分别申请两个大小不同的空闲分区。

(2)当再次申请内存大小超过剩余空闲内存时,则会提示分配不成功。

14

嵌入式操作系统内存管理模拟实践

(3) 当要分配的内存大小不足够时,可以对内存进行回收,则选择“ac”进行内存回收。

(4)当回收的内存大小大于剩余已分配了的内存大小,则系统会提示输入错误的信息,提示重新输入正确的内存地址和合理的内存大小。

15

嵌入式操作系统内存管理模拟实践

(5)由于任务开始执行时主存分配算法采用“最佳适应”算法。最佳适应算法是按作业要求挑选一个能满足作业要求的最小空闲区,这样保证可以不去分割一个大的区域,使装入大作业时比较容易得到满足。但是最优适应算法容易出现找到的一个分区可能只比作业所要求的长度略大一点的情况,这时,空闲区分割后剩下的空闲区就很小,这种很小的空闲区往往无法使用,却影响了主存的使用。

动态分区方式下回收主存空间时,应该检查是否有与归还区相邻的空闲区。若有,则应该合并成一个空闲区。一个归还区可能有上邻空闲区,也可能有下邻空闲区,或者既有上邻空闲区又有下邻空闲区,或者既无上邻空闲区也无下邻空闲区。在实现回收时,首先将作业归还的区域在已分配表中找到,将该栏目的状态变为“空”,然后检查空闲区表中标志为“未分配”的栏目,查找是否有相邻空闲区;
最后,合并空闲区,修改空闲区表。

(6)当要装入一个作业时,从空闲区表中查找标志为“未分配”的空闲区,从中找出一个能容纳该作业的空闲区。如果找到的空闲区正好等于该作业的长度,则把该分区全部分配给作业。这时应该把该空闲区登记栏中的标志改为“空”,同时在已分配区表中找到一个标志为“空”的栏目登记新装入作业所占用分区的起始地址、长度。如果找到的空闲区大于作业长度,则把空闲区分成两部分,一部分用来装入作业,另外一部分仍为空闲区。这时只要修改原空闲区的长度,且把新装入的作业登记到已分配区表中。

16

嵌入式操作系统内存管理模拟实践

4.2、流程图

(1)主程序流程图:

17

嵌入式操作系统内存管理模拟实践

18

嵌入式操作系统内存管理模拟实践

)分配算法流程图:

19

2嵌入式操作系统内存管理模拟实践

第五章 使用说明

5.1.源程序的编译:

在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器.首先我们知道这个文件的文件名是memory,所以要编译这个程序,我们只要在命令行下执行: gcc -o memory memory.c gcc 编译器就会为我们生成一个memory的可执行文件.执行./hello就可以看到程序的输出结果了.命令行中 gcc表示我们是用gcc来编译我们的源程序,-o 选项表示我们要求编译器给我们输出的可执行文件名为hello,而memory.c是我们的源程序文件.gcc编译器有许多选项,一般来说我们只要知道其中的几个就够了. -o选项我们已经知道了,表示我们要求输出的可执行文件名. -c选项表示我们只要求编译器输出目标代码,而不必要输出可执行文件. -g选项表示我们要求编译器在编译的时候提供我们以后对程序进行调试的信息.知道了这三个选项,我们就可以编译我们自己所写的的源程序了。

5.2 程序的运行

本次的嵌入式操作系统的内存管理模拟主要采用两个内存分配算法:最先适应分配算法,最优适应分配算法

首先用户要先选择适应算法,然后用户提出内存空间的申请;
系统根据申请者的要求,按照一定的分配策略分析内存空间的使用情况,找出能满足请求的空闲区,分给申请者;
当程序执行完毕或主动归还内存资源时,系统要收回它所占用的内存空间或它归还的部分内存空间。

1.程序运行时首先接收输入:首先选择需要适应算法的要求,输入b时,表示最优适应分配算法,输入f时,表示最先适应分配算法

2.然后程序提示要进行分配还是回收的工作,输入as表示进行内存分配,输入ac表示进行内存的回收。

3.当要进行内存分配时,则要求输入要申请内存的大小,然后程序会根据

20

嵌入式操作系统内存管理模拟实践

剩余的内存大小进行具体分配。

4.建立空闲区表并在屏幕上显示输出空闲区表内容,空闲区表中记录了内存中可供分配的空闲区的始址和长度,用标志位指出该分区是否是未分配的空闲区。

5.在屏幕上显示输出新的空闲区表和已分配区表的内容。

6.当要进行内存的回收时,从用户界面根据程序提示接收一个内存回收申请,格式为:地址、申请空间的大小。

7.在屏幕上显示输出新的空闲区表和已分配区表的内容。

21

嵌入式操作系统内存管理模拟实践

第六章 实习总结

在一个月的实习培训期间,我从一个只会简单C语言编程的初学者变成一个对嵌入式及其基础课程都有一定了解并能有一些应用的人。我很感谢这次实习培训的老师在这么短的时间里教会我很多东西,也感谢学校能在大学期间提供给我一个这么好的实习培训的机会。

通过本次实习培训让我了解了嵌入式Linux具有开放性、多用户、多任务、稳定性强、设备独立性的特点。本次实习培训了解了嵌入式Linux的内核,进程管理,内存管理,文件系统管理,设备管理,进程间通信机制以及典型的CLinux、RTLinux、MontaVista LinuxRTAI 等嵌入式Linux应用。并学会用所学知识解决实际问题。

在思想上,我也有了更新一步的认识,作为一个即将迈入社会的新人,在以后的工作学习中一定要注意一下几点:

1、要有吃苦的决心,和平的心态和不耻下问的精神。作为一个新人,平和的心态很重要,做事不要太过急功近利,要多学多问,不懂得要及时问师傅,领导和同事。要努力做到最好。

2、工作中要多看,多听,多观察,少讲话,不要说与工作无关的内容,多学习别人的艺术语言和办事方法。

3、除了工作具有责任心外,要善于经常做工作总结。主要是记录,计划和总结错误。工作中坚决不犯同样的错误,对于工作要未雨绸缪,努力做到最好。

4、善于把握机会。如果上级把一件超出自己能力范围或工作范围的事情交给自己做,一定不要抱怨并努力完成,因为这也许是上级对自己的能力考验也是一次展示自己工作能力的机会。

5、坚持学习。不能只学习和专业有关的知识,还要学习与业务相关的知识。因为一个企业的发展不仅在于内部的运作,还要靠外部的推动。要按经济规律和法律规定办事。有一位教育学家说过,当我们把学过的知识忘得一干二净时,最后剩下来的就是教育的本质了。这里我把“教育”改成了“知识”,我们在大学里学习的知识也许会被淘汰,但那些最基本的学习方法永远是我们掌握最新知识的法宝。

6、心态很重要。并非所有的事情都是你能预知,你所掌握的。这个时候,一定不能烦躁,要调整心态,以最好的心态去面对问题,面对困难,这样问题才有可能被解决。

22

嵌入式操作系统内存管理模拟实践

参考文献

1、《Linux操作系统及实验教程》 李善平 机械工业版社 1999.10 2、《操作系统原理——Linux技术实现》 史志才 高等教育出版社 2004.11 3、《操作系统教程——原理和实例分析》 孟静 高等教育出版社 2001.9 4、汤子瀛,哲凤屏主编.《计算机操作系统》西安电子科技大学出版社 2002年

5、白洛 李俊奎 刘森林 译《深入理解Linux虚拟内存管理》上海科学技术出版社 2002-06-01 6、隆巴多; 吴雨浓主编《构建嵌入式Linux系统》中国电力出版社 2003-06-017 7、云巅工作室译《C Primer plus》第五版中文版 人民邮电出版社 2005.2

23

嵌入式操作系统内存管理模拟实践

附录:(重要代码)

1./*函数原型*/ RECT *aignment(RECT *head,int application); void acceptment1(RECT *head,RECT *back1); void acceptment2(RECT *head,RECT *back1) ; int backcheck(RECT *head,RECT *back1); void print(RECT *head);

2./*变量声明*/ RECT *head,*back,*aign1,*p; int application1,maxblocknum; char way;

主要函数算法如下:

void acceptment2(RECT *head,RECT *back1) { RECT *before,*after; int insert ; insert=0; before=head; after=head->next; if(head->next==NULL) /*如果可利用区表为空*/ { head->size=back1->size; head->next=back1; maxblocknum++; back1->next=NULL; } 主要函数算法如下:

24

嵌入式操作系统内存管理模拟实践

void acceptment1(RECT *head,RECT *back1)/*首先适应*/ {

RECT *before,*after;

int insert;

before=head;

after=head->next;

insert=0;

while(!insert) /*将回收区插入空闲区表*/

{

if((after==NULL)|| ((back1->addreaddre)&&

(back1->addre>=before->addre)))

{

before->next=back1; back1->next=after; insert=1;

}

else

{ before=before->next; after=after->next;

}

}

4.typedef struct node /*设置分区描述器*/

5.RECT *aignment(RECT *head,int application) /*分配函数*/

6.void print(RECT *head) /*输出链表*/ 25

嵌入式操作系统内存管理模拟实践

7.int backcheck(RECT *head,RECT *back1) /*检查回收块的合法性,back1为要回收的结点地址*/

8.void print(RECT *head) /*输出链表*/

9.void acceptment2(RECT *head,RECT *back1) /*最佳适应,back1为回收结点的地址*/

10.void acceptment1(RECT *head,RECT *back1)/*首先适应*/

26

专业实习报告

专业实习报告

专业实习报告

专业实习报告

电子实习报告范本

推荐访问:实习报告 专业 电子