假如您想更深入地理解“操作系统心得体会”,我们建议您一定要读这篇文章。平日里,我们常常会在偶然的事件中受到启发,这时候不妨记录下我们所想所想,因为这样的体悟不仅有助于我们形成勤于思考的好习惯和思维意识,同时也可以为我们的学习和工作带来帮助。愿这篇文章能为您提供帮助!
操作系统心得体会【篇1】
每一次课程设计度让我学到了在平时课堂不可能学到的东西。所以我对每一次课程设计的机会都非常珍惜。不一定我的课程设计能够完成得有多么完美,但是我总是很投入的去研究去学习。所以在这两周的课设中,熬了2个通宵,生物钟也严重错乱了。但是每完成一个任务我都兴奋不已。一开始任务是任务,到后面任务就成了自己的作品了。总体而言我的课设算是达到了老师的基本要求。总结一下有以下体会。
1、网络真的很强大,用在学习上将是一个非常高效的助手。
几乎所有的资料都能够在网上找到。从linux虚拟机的安装,到linux的各种基本命令操作,再到gtk的图形函数,最后到文件系统的'详细解析。这些都能在网上找到。也因为这样,整个课程设计下来,我浏览的相关网页已经超过了100个(不完全统计)。当然网上的东西很乱很杂,自己要能够学会筛选。不能决定对或错的,有个很简单的方法就是去尝试。就拿第二个实验来说,编译内核有很多项小操作,这些小操作错了一项就可能会导致编译的失败,而这又是非常要花时间的,我用的虚拟机,编译一次接近3小时。所以要非常的谨慎,尽量少出差错,节省时间。多找个几个参照资料,相互比较,慢慢研究,最后才能事半功倍。
2、同学间的讨论,这是很重要的。
老师毕竟比较忙。对于课程设计最大的讨论伴侣应该是同学了。能和学长学姐讨论当然再好不过了,没有这个机会的话,和自己班上同学讨论也是能够受益匪浅的。大家都在研究同样的问题,讨论起来,更能够把思路理清楚,相互帮助,可以大大提高效率。
3、敢于攻坚,越是难的问题,越是要有挑战的心理。
这样就能够达到废寝忘食的境界。当然这也是不提倡熬夜的,毕竟有了精力才能够打持久战。但是做课设一定要有状态,能够在吃饭,睡觉,上厕所都想着要解决的问题,这样你不成功都难。
4、最好在做课设的过程中能够有记录的习惯,这样在写实验报告时能够比较完整的回忆起中间遇到的各种问题。
比如当时我遇到我以前从未遇到的段错误的问题,让我都不知道从何下手。在经过大量的资料查阅之后,我对段错误有了一定的了解,并且能够用相应的办法来解决。
在编程中以下几类做法容易导致段错误,基本是是错误地使用指针引起的
1)访问系统数据区,尤其是往系统保护的内存地址写数据,最常见就是给一个指针以0地址
2)内存越界(数组越界,变量类型不一致等)访问到不属于你的内存区域
3)其他
例如:
定义了指针后记得初始化,在使用的时候记得判断是否为null
在变量处理的时候变量的格式控制是否合理等
解决方法
1.利用gdb逐步查找段错误:
2.分析core文件
3.段错误时启动调试:
4.利用backtrace和objdump进行分析:
总而言之,对待课设要像对待自己的作品一样,不要当作任务来完成。
操作系统心得体会【篇2】
对于此次课程设计,我早在寒假就借了linux相关书籍参看,但上面讲的主要是有关linux操作方面的内容,编程方面讲得很少,而且在假期中也并不知道课设的题目是什么,因此此次课设基本上都是在开学后的这两周内完成的。
以前做过的软件方面的课设如c语言课设、数据结构课设都是在假期完成的,由于自己是一个十分追求完美的人,因此几乎每次都花了将近大半个假期的时间来做,如c语言就花了一个多月的时间来做,分数当然也较高,有90来分。对于课程设计,我历来都是相当认真的,此次操作系统的课程设计当然也不例外。可是linux以前没怎么接触过,学校也没怎么系统地讲过,在刚接到题目时除了知道如何用gcc编译等等,几乎可以算作处于一无所知的状态。时间紧任务重,要从对linux一无所知的状态到独立出色地完成课设,不下点苦
功夫是不成的。那两周里我除了吃饭睡觉几乎就没离开电脑过,有时时间晚了食堂关门饭都没得吃了。终于,在这样近乎玩命地学习工作下,身体撑不住了,在第二周周三晚上我发烧了。但是眼看就要到检查的日期了,而我的课设也就快完工了。我不想因为看病而耽误下去弄得前功尽弃,因此只买了点药,继续在电脑前拼命最后,总算赶在周五检查前做出了较满意的作品。然而这几天一直高烧不退,周五回家后就直接倒床昏睡过去,周六早上一量居然还有39°。于是赶紧去附近一家医院看病,连打了两天吊针才算好转过来。而看病用的几百块钱由于不是在校医院看的也无法报销,只好自掏腰包了。
在周五检查那天,老师看了我第4题后,又抽查了一下我的第3题,其实也只是要我把第3题运行一下而已罢了。若放在平时,这绝对是小菜一碟,但当时正在发烧,加上一点紧张,居然把模块加载命令insmodfdev、o错打成insmodfdev、c了,由于这个低级失误造成心中慌乱,于是后面的一条生成设备文件命令mknod干脆就照着参考资料打上去了。于是老师认为我不熟,在那题上打了个半钩。当时心里确实感到十分地遗憾和沮丧,心想所谓“台上一分钟,台下十年功”,一分钟若把握不好,也同样尽毁十年功啊!
但最后,我终于明白,分数不过是个数字,知识才是自己的。通过这次课程设计,我确实学到了很多东西,多年后我可能已经忘记这次课设最后打了多少分,但这些学到的东西却可以使我受益终生。除了知识技术上的东西,我更锻炼了自己的快速学习能力;我学会了如何快速有效地从图书馆、网络获取自己需要的信息;我尝到了在周围很多同学拷来拷去时孤军奋战的痛苦;我体会了夜以继日完成一个项目时中途过程的艰辛及最终完成后巨大的成就感我更加深了人生的信心,以后面对任何一个困难的项目,我想我都不会惧怕,并最终能够成功地将其完成。
感谢老师,感谢此次课程设计。虽然在其中吃了不少苦头,但我毫不后悔,因为我满载而归。
操作系统心得体会【篇3】
在学习了《操作系统》后,我对操作系统的理解有了一定的认识和提高。
首先,操作系统设置要完全符合操作系统的各个要求,操作系统的设置必须符合操作系统的各个要求。
其次,操作系统设计要有明确的要求和操作流程。
最后,操作系统的设计必须符合操作系统的各个要求。
通过这次学习,我深刻地感受到了系统的重要性,也使自己对系统的理解加深了许多。同时也使自己的操作系统能够有效地与操作系统进行有机的结合,从而提高自己的操作的可靠性。
这次实训给我留下了不一样的深刻体会。我们在操作系统的同时,也要在实际操作的过程中,不断地总结、不断地学习,提高自己的操作系统的能力,使自己成为操作系统运行的能力和经验的有效的掌握者。
在这次实训过程中,我发现了自身许多不足之处。如在操作系统中,由于对系统的理解不够深入,在一开始我并未真正意识到系统运行的重要性,并将在今后的操作过程中努力加强自己的操作系统的能力。
通过这次学习,使自己对系统的理解有了进一步的提高。这次的实训,对自己今后在系统操作中的运行有了更进一步的认识,同时也使自己对系统的运行有了更进一步的了解。这次实训对于自己将来的专业学习也是一个很好的机会,让自己的专业知识有了很大的积淀,也使自己对系统的运作更加的熟悉和熟练。
这次实训,虽然自己在操作系统的过程中,遇到了许多以前没有碰到过的困难。但是通过这次实训,我也从中吸取了许多的经验,这些经验是一笔宝贵的财富,它们给予了自己很多经验教训,帮助自己在将来的学习和工作生活中取得更大的进步。
操作系统心得体会【篇4】
随着计算机软硬件技术的飞速发展,计算机的功能越来越强大,使用的范围也越来越广泛,计算机进入家庭已经成为一种世界性的潮流。学习计算机组装实验让我们快速、全面地了解计算机硬件的各种知识,加强了我们的实践动手能力和进一步了解理论知识,掌握计算机日常维护方面的技巧,通过自己动手来组装或维护计算机,既可以增长知识,又增添无穷的乐趣。虽然时间不是很长,但是我受益匪浅,这次实训,让我对计算机有了更深的了解,对此次实训,颇有体会。
本次实验主要任务是学会计算机的拆机、组装和安装操作系统,通过理论与实践相结合,进一步加深我们的理论知识。通过学习了计算机组装,我了解了计算机方面的一些基础知识,包括计算机的发展和系统组成。也了解到了CPU,主板,内存,外存和外部设备等配件的基本结构。还学到了相关方面的工作原理。。。我们还学了微机组装,CMOS设置和硬盘的分区及格式化。操作系统的安装,驱动程序的安装和常用软件的安装。原来在计算机方面不是很懂的我,开始渐渐地更加深入地认识它了。这样我也就能更好的利用它了,这个一直在我身边陪伴我的朋友。虽然在个别方面我们已经会了,不过我们很高兴能够这么全面,这么系统化的了解到,这对我们受益非浅!这辈子也许都要与计算机打交道了,学习计算机组装充实了我们的知识,能够让我们更好的利用它。
这次学习了计算机组装实验,我最大的收获就是学会了如何把各个部件安插在正确的位置,能够自主独立组装一台计算机,还有学会了如何设置BIOS,设置第一启动项,如何分区等,如何用光盘安装操作系统,也向老师请教,学会了如何用U盘启动PE来安装操作系统,这些都是在课本上学不到的,或者就是空有理论知识,却没有实践能力和经验,对平常计算机遇到一些问题都摆弄很久。通过这次实验,让我有机会理论和实践相结合,发现了以往没注意的或者没有遇到的问题,并得到一一解决,收获颇丰!
“纸上得来终觉浅,绝知此事要躬行!”在短暂的学习过程中,让我深深的感觉到自己在实际运用中的专业知识的匮乏。 让我真正领悟到“学无止境”的含义。在进行实训的过程中,我真正学到了计算机教科书上所没有或者真正用到了课本上的知识,这样,既巩固了旧知识,又掌握了新知识。这次实训让我学到的东西太多,使我受益非浅,不过,虽然辛苦了点,但能让我学到不同的东西,我心里还是高兴的。人非生而知之,要学得知识,一靠学习,二靠实践。没有实践,学习就是无源之水,无本之木。
以上就是我这次计算机组装实验的心得和感受,不足之处希望老师给予纠正和指导,谢谢!
操作系统心得体会【篇5】
计算机操作系统是铺设在计算机硬件上的多层系统软件,不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,由它实现了对计算机硬件操作的抽象。
操作系统是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。
操作系统的一些原理在生活中的应用主要有以下几个,结合生活中的例子,可以化抽象为具体,我们会更加清楚地了解到其原理与操作过程:
1、银行家算法——避免死锁
死锁的产生是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象死锁。我觉得操作系统所讲的死锁就好像两个人竟过独木桥,两辆车竟过单行桥等阻塞现象,原因是共享资源,即道路。
为提高系统资源的利用率,避免死锁并不严格限制死锁必要条件
的存在,而是在资源的动态分配过程中,使用某种方法去防止系统进入不安全状态,从而避免死锁的最终出现。然而,最有代表性的避免死锁的算法,是dijkstra的银行家算法。在该方法中把系统的状态分为安全状态和不安全状态,只要能使系统始终都处于安全状态,便可以避免发生死锁。银行家算法的基本思想是分配资源之前,判断系统是否是安全的;若是安全的,才分配。
我们可以把操作系统看作是银行家,操作系统管理的资源相当于银行家管理的资金,进程向操作系统请求分配资源相当于用户向银行家贷款。为保证资金的安全,银行家规定:
(1)当一个顾客对资金的最大需求量不超过银行家现有的资金时就可接纳该顾客;
(2)顾客可以分期贷款,但贷款的总数不能超过最大需求量;
(3)当银行家现有的资金不能满足顾客尚需的贷款数额时,对顾客的贷款可推迟支付,但总能使顾客在有限的时间里得到贷款;
(4)当顾客得到所需的全部资金后,一定能在有限的时间里归还所有的资金。
另外,我们也可以把操作系统看作是建造房子,操作系统的资源看作是造房子的起吊机台数,进程向操作系统请求分配资源相当于建造房子时申请的起吊机台数。为保证工程的顺利进行,其操作过程如下:当一栋房子对起吊机的最大需求量不超过建造房子现有的起吊机时可接纳该房子的建造;
所要建造的房子可以分开几次申请起吊机,但申请的起吊机的总数不能超过最大需求量;
当现有的起吊机台数不能满足某栋房子尚需的起吊机时,对该栋房子所需的起吊机数可推迟给予,但总能是房子在有限的时间里得到贷款;
当建造的房子得到所需的全部起吊机后,一定能在有限的时间里归还所有的起吊机数。
2、进程同步问题:进程管理模块包括进程概念、进程调度、进程互斥、进程同步、进程通信、进程死锁各知识单元。进程概念包含进程特征、进程状态与转换、进程控制各知识点;进程调度包含调度时机、调度算法、调度过程各知识点;进程互斥包含与时间有关的错误、临界资源与临界区、临界区使用原则、临界区互斥访问的解决途径、临界区互斥访问的解决途径各知识点;进程同步包含信号量同步机制、生产者与消费者问题、读者与写者问题、哲学家进餐问题各知识点;进程通信包含忙等待策略、睡眠和唤醒策略、消息传递策略各知识点;进程死锁包含产生原因、必要条件、解决途径各知识点。
一个进程到达了确定的点后,除非另一些进程已经完成了某些操作,否则不得不停下来等待另一进程为它提供的消息,早未获得消息前,该进程处于等待状态,获得消息后被唤醒处于就绪状态,这就是进程同步。我们在生活中也可以找到相应的例子:例如汽车司机和售票员,汽车司机负责开车、进站、开车门、关车门与进站;售票员负责售票、进出站后观察车门,给司机发开关门信息;正常状态下,各
自活动,司机开车,售票员售票;在进出站时双方要进行进程同步。
3、生产—消费者问题在实际的操作系统操作过程中,经常会碰到如下场景:某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类、函数、线程、进程等)。产生数据的模块,就形象地称为生产者;而处理数据的模块,就称为消费者。
单单抽象出生产者和消费者,还够不上是生产者—消费者问题。该问题还需要有一个缓冲区处于生产者和消费者之间,作为一个中介。生产者把数据放入缓冲区,而消费者从缓冲区取出数据。
为了理解这一问题,我们举一个寄信的例子。假设你要寄一封平信,大致过程如下:
1、你把信写好——相当于生产者制造数据
2、你把信放入邮筒——相当于生产者把数据放入缓冲区
3、邮递员把信从邮筒取出——相当于消费者把数据取出缓冲区
4、邮递员把信拿去邮局做相应的处理——相当于消费者处理数据
操作系统知识点看似繁杂,但究其原理,在对不同系统资源功能进行管理时,所采取的策略和方法有很多是相同的。从操作系统四种重要实现技术出发的横向技术线包括中断技术、共享技术、虚拟技术和缓冲技术。
(1)中断技术模块是实现程序并发执行与设备并行操作的基础,它包括中断类型、中断优先级、中断事件各知识单元。中断类型知识单
元包括外中断、内中断知识点;中断优先级知识点在不同的系统中有不同的规定;中断事件知识单元包括进程创建与撤消、进程阻塞与唤醒、分时时间片、缺页中断与缺段中断、i/o操作、文件操作各知识点。
(2)共享技术模块是提高资源利用率的必然途径,它包括处理机共享、存储共享、设备共享、文件共享各知识单元。处理机共享包含进程的并发执行;存储共享包含外存储器共享、内存储器共享知识点;设备共享包含spooling系统;文件共享包含便于共享的文件目录。
(3)虚拟技术模块是把一个物理实体变为若干面向用户的逻辑单元,使资源的用户使用与系统管理相分离,从而提高资源利用率和安全性方,它包括虚拟处理机、虚拟存储器、虚拟存储器方法、虚拟设备、虚拟文件各知识单元。虚拟处理机包含多进程管理;虚拟存储器包含地址转换、中断处理过程、置换知识点;虚拟存储器方法包含页式管理、段式管理、段页式管理各知识点;虚拟设备包含设备共享;虚拟文件包含文件共享。
(4)缓冲技术模块是异步技术的实现前提,可大大提高相关资源的并行操作程度,它包括存储管理缓冲技术、设备管理缓冲技术、文件管理缓冲技术各知识单元。存储管理缓冲技术包含快表;设备管理缓冲技术包含硬缓冲、软缓冲、spooling系统中的输入/输出井知识点;文件管理缓冲技术包含记录成组技术、文件表的打开。
操作系统这门课程并不是教你如何使用操作系统的,而是讲操作
系统内部机制的。操作系统的目标是为用户提供一个良好的界面,方便用户使用计算机,同时对内部各种软硬件资源能够进行有效地管理和分配,使整个系统能高效率得运行。操作系统的服务是越来越到位了。操作系统主要有五大功能:处理机管理、存储器管理、设备管理、文件管理、用户接口。我们现在使用的大多是pc机,都是只有一块cpu,而有时却要在计算机上运行多个程序,那么每道程序在什么时候使用cpu,这需要合理得分配协调才行,操作系统关于处理机的分配有相应的调度算法,这些工作都有操作系统帮你代劳。内存储器是存放程序与数据的,如何存放才能井井有条,互不干扰,而且能充分合理的利用有限空间,这都需要操心,这一切也是操作系统的事。当你要使用设备的时候,例如要使用打印机,只要单击打印机按钮即可将内容传到打印机进行后台打印,这一切也都是因为有了操作系统,才可以这么轻松的调用外部设备,还不影响当前处理的工作,所以对设备的管理也是非常重要的。文件的操作对于每个用户来说是家常便饭,每次存取文件只需知道地点和文件名即可,你可曾想过你要存取的文件是放在那个道那个扇区上么?有时你不想让自己的文件被外人看到,还可设置权限。这些幕后的工作都由操作系统完成,你只需要使用文件名对文件进行操作就可以了。操作系统还为用户使用提供了两种方式的接口:命令接口和系统调用接口。命令接口可使用户交互的使用计算机,敲入一条命令,系统响应返回结果,用户根据结果再敲入下一条命令,如此反复。windows中开始菜单下里的运行,也可执行命令。系统调用是为编程人员提供的,每个系统调用都是一
个能完成特定功能的子程序,这样编程人员就可站在操作系统的肩膀上编制程序,没必要所有的功能都从头编起,操作系统提供的功能只需申请调用即可。
每当我们打开计算机,启动成功后,首先映入眼帘的就是操作系统的'界面。我们所做的一切的工作都是在操作系统之上来完成的。可是谁也不会去想:为什么鼠标的拖拖曳曳就能完成对文件、磁盘、各种软硬件资源的管理;谁也没意识到是因为有了操作系统的支撑,我么才那么方便的使用计算机。直到有一天,开机后发觉整个屏幕黑糊糊得一片,看不到蓝天白云急得象热锅上的蚂蚁时,才知道操作系统是多么得重要,明白了所有的程序的运行原来是离不开操作系统的。这就是“拥有了不知道珍惜,失去后才知道宝贵”的操作系统版的解释。如果有一天离开了操作系统,我们的计算机也就成了一堆废铁,什么事也干不了。
小编精心推荐