操作系统心得体会

时间:2024.4.20

操作系统心得体会

1925319 周浩

参考文献:Eric S. Raymond。《UNIX编程艺术》电子工业出版社 712102116

学习C语言是我第一次接触编程,也是如此近距离的接触计算机内部运行的原理,可能是在学习C的过程中没有遇到困难吧,我对编程产生了浓厚的兴趣,在这之后又学习了C++, 学习C++主要是使用C++之父(B S 单词忘了)写的那本《C++程序设计语言》,700多页的书中有一句话我记得特别清楚,他说语言就是一种思维方式,C是过程的思维,C++是面向对象的思维,读另一位高手(名字首字母是 S与 B 也忘了)写的《C++编程技术》一书时也有一句话让我印象深刻——去编程就是去理解,虽然我只学了C,C++(还有VC MFC 自我感觉他们不是,是一种C++的变体)但我感觉语言只需要记得地址,然后去骗骗编译器, 最重要的是对需要解决的问题的数学化,剩下的就是多实际操作,过程的积累是很重要的, 因为在操作的过程中可以加深对很多方面的理解,学编译器,那是大二下花了大概三个星期把清华出版的编译原理研究了下,是学习计算机以来觉得障碍最大的一门专业课,武功只算练了一半,编译的后期没怎么学(中间代码生成以后的东西),不过最近把PL/0放在机器上实际运行了后,我找到了一种感觉要理解语法分析词法分析要从计算机的角度去理解,顺序, 分支,循环,我还没有认真的去思考之间的关系,最近在忙着另外的事,这种感觉已经帮助解决了很多问题,剩下的就是多做些事去实际操作,加深理解,如果问题简化到只是时间问题了就不是问题了,我喜欢这样对自己说。

前面讲了很多与操作系统无关的体会好像有凑字的嫌疑,不要误会我在强调一种感觉,说不出来,但却很有用,这是一种理解,唯有理解才能分出高下,我用4,5个晚上我操作系统的书浏览到了系统安全,操作系统是一种程序,有着更高的特权级别,功能是提供服务与管理一些硬件的资源,存储器管理,处理机管理,文件管理,设备管理,我觉得这些问题大多数都可归结为数据结构,用数据结构的角度去解决应当不难,但是在用户程序与系统本身之间的切换方面总是感觉有些问题想不清楚,找不到我一直强调的那种会让问题变得简单的高深理解,我还需要时间去理解,我想听听老师对这方面的认识,说些高度概括的词让我思考 如何去理解这件事

UNIX操作系统的历史已经成为了一种传奇,但是我对它的历史不感兴趣,我对那些天才们的思维很感兴趣,是计算机领域宝贵财产,有时间我会去看,还有对无数人日日夜夜不辞辛苦的付出很是钦佩,我会向他们学习,对还有一件事印象深刻

UNIX在初期主要是用于DEC的机器,尽管没有正规的技术支持,但仗着灵活、快捷、容易修改和扩充以及资源丰富(包括支持的硬件设备更丰富,DEC的操作系统只支持自己的系列产品)的强大优势,很快就严重影响到DEC自身的软件推广。碰上这样的飞来横祸,DEC当然是非常恼火,他们对使用UNIX而带来的硬件问题拒不提供支持,但尽管如此也不能阻挡大家对UNX的热情。而VAX/VMS乃是DEC寄予厚望的战略级产品,技术那是相当的优秀,居然甫一推出,就又遭到UNIX的追杀,也难怪老板Olsen会口出恶言,讥讽UNIX是“蛇油”(意为“骗人的万用药”)了。DEC苦撑了几年之后,终于不支,改变态度,于19xx年推出了自己的UNIX变种——DEC ULTRIX,但在推广策略上,仍是以自家的VMS为主导。DEC公司的保守作风终于酿成大祸,在别的公司推出专门针对UNIX设计的机器后,DEC的江湖地位每旷愈下,在PC问世后,更是一蹶不振,后来连年亏损,19xx年把Olsen赶下台也没解决问题,终于在19xx年,这个曾经的传奇——一度排名世界第二的计算机公司被后起之秀COMPAQ并购,不过96亿美元的天价也算是对它价值的承认。

DEC有他自己的想法不可否人,不过坚持有时会成为一种负担,如果用一种变通的方法

借UNIX的力量的话也许历史又会是另一种结果,这个问题我也得思考,发现自己就像是多线程处理器,有很多的事,但每件事都还没return

希望早日找到感觉,剩下的就是经验的积累,时间的付出,那就是我说的那句话了如果问题简化到只是时间问题了就不是问题了,简单


第二篇:学习操作系统心得体会


学习操作系统心得体会

计算机操作系统是铺设在计算机硬件上的多层系统软件,不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,由它实现了对计

算机硬件操作的抽象。

操作系统是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。

操作系统的一些原理在生活中的应用主要有以下几个,结合生活中的例子,可以化抽象为具体,我们会更加清楚地了解到其原理与操作过程:

1、银行家算法——避免死锁

死锁的产生是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象死锁。我觉得操作系统所讲的死锁就好像两个人竟过独木桥,两辆车竟过单行桥等阻塞现象,原因是共享资源,即道路。

为提高系统资源的利用率,避免死锁并不严格限制死锁必要条件

的存在,而是在资源的动态分配过程中,使用某种方法去防止系统进入不安全状态,从而避免死锁的最终出现。然而,最有代表性的避免死锁的算法,是Dijkstra的银行家算法。在该方法中把系统的状态分为安全状态和不安全状态,只要能使系统始终都处于安全状态,便可以避免发生死锁。银行家算法的基本思想是分配资源之前,判断系统是否是安全的;若是安全的,才分配。

我们可以把操作系统看作是银行家,操作系统管理的资源相当于银行家管理的资金,进程向操作系统请求分配资源相当于用户向银行家贷款。为保证资金的安全,银行家规定:

(1)当一个顾客对资金的最大需求量不超过银行家现有的资金时就可接纳该顾客;

(2)顾客可以分期贷款,但贷款的总数不能超过最大需求量;

(3)当银行家现有的资金不能满足顾客尚需的贷款数额时,对顾客的贷款可推迟支付,但总能使顾客在有限的时间里得到贷款;

(4)当顾客得到所需的全部资金后,一定能在有限的时间里归还所有的资金。

另外,我们也可以把操作系统看作是建造房子,操作系统的资源看作是造房子的起吊机台数,进程向操作系统请求分配资源相当于建造房子时申请的起吊机台数。为保证工程的顺利进行,其操作过程如下: ? 当一栋房子对起吊机的最大需求量不超过建造房子现有的起吊机时可接纳该房子的建造;

? 所要建造的房子可以分开几次申请起吊机,但申请的起吊机的

总数不能超过最大需求量;

? 当现有的起吊机台数不能满足某栋房子尚需的起吊机时,对该栋房子所需的起吊机数可推迟给予,但总能是房子在有限的时间里得到贷款;

? 当建造的房子得到所需的全部起吊机后,一定能在有限的时间里归还所有的起吊机数。

2、进程同步问题:进程管理模块包括进程概念、进程调度、进程互斥、进程同步、进程通信、进程死锁各知识单元。进程概念包含进程特征、进程状态与转换、进程控制各知识点;进程调度包含调度时机、调度算法、调度过程各知识点;进程互斥包含与时间有关的错误、临界资源与临界区、临界区使用原则、临界区互斥访问的解决途径、临界区互斥访问的解决途径各知识点;进程同步包含信号量同步机制、生产者与消费者问题、读者与写者问题、哲学家进餐问题各知识点;进程通信包含忙等待策略、睡眠和唤醒策略、消息传递策略各知识点;进程死锁包含产生原因、必要条件、解决途径各知识点。

一个进程到达了确定的点后,除非另一些进程已经完成了某些操作,否则不得不停下来等待另一进程为它提供的消息,早未获得消息前,该进程处于等待状态,获得消息后被唤醒处于就绪状态,这就是进程同步。我们在生活中也可以找到相应的例子:例如汽车司机和售票员,汽车司机负责开车、进站、开车门、关车门与进站;售票员负责售票、进出站后观察车门,给司机发开关门信息;正常状态下,各

自活动,司机开车,售票员售票;在进出站时双方要进行进程同步。

3.生产—消费者问题 在实际的操作系统操作过程中,经常会碰到如下场景:某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类、函数、线程、进程等)。产生数据的模块,就形象地称为生产者;而处理数据的模块,就称为消费者。

单单抽象出生产者和消费者,还够不上是生产者—消费者问题。该问题还需要有一个缓冲区处于生产者和消费者之间,作为一个中介。生产者把数据放入缓冲区,而消费者从缓冲区取出数据。

为了理解这一问题,我们举一个寄信的例子。假设你要寄一封平信,大致过程如下:

1、你把信写好——相当于生产者制造数据

2、你把信放入邮筒——相当于生产者把数据放入缓冲区

3、邮递员把信从邮筒取出——相当于消费者把数据取出缓冲区

4、邮递员把信拿去邮局做相应的处理——相当于消费者处理数据

操作系统知识点看似繁杂,但究其原理,在对不同系统资源功能进行管理时,所采取的策略和方法有很多是相同的。从操作系统四种重要实现技术出发的横向技术线包括中断技术、共享技术、虚拟技术和缓冲技术。

(1)中断技术模块是实现程序并发执行与设备并行操作的基础,它包括中断类型、中断优先级、中断事件各知识单元。中断类型知识单

元包括外中断、内中断知识点;中断优先级知识点在不同的系统中有不同的规定;中断事件知识单元包括进程创建与撤消、进程阻塞与唤醒、分时时间片、缺页中断与缺段中断、I/O操作、文件操作各知识点。

(2)共享技术模块是提高资源利用率的必然途径,它包括处理机共享、存储共享、设备共享、文件共享各知识单元。处理机共享包含进程的并发执行;存储共享包含外存储器共享、内存储器共享知识点;设备共享包含SPOOLing系统;文件共享包含便于共享的文件目录。

(3)虚拟技术模块是把一个物理实体变为若干面向用户的逻辑单元,使资源的用户使用与系统管理相分离,从而提高资源利用率和安全性方,它包括虚拟处理机、虚拟存储器、虚拟存储器方法、虚拟设备、虚拟文件各知识单元。虚拟处理机包含多进程管理;虚拟存储器包含地址转换、中断处理过程、置换知识点;虚拟存储器方法包含页式管理、段式管理、段页式管理各知识点;虚拟设备包含设备共享;虚拟文件包含文件共享。

(4)缓冲技术模块是异步技术的实现前提,可大大提高相关资源的并行操作程度,它包括存储管理缓冲技术、设备管理缓冲技术、文件管理缓冲技术各知识单元。存储管理缓冲技术包含快表;设备管理缓冲技术包含硬缓冲、软缓冲、SPOOLing系统中的输入/输出井知识点;文件管理缓冲技术包含记录成组技术、文件表的打开。

操作系统这门课程并不是教你如何使用操作系统的,而是讲操作

系统内部机制的。操作系统的目标是为用户提供一个良好的界面,方便用户使用计算机,同时对内部各种软硬件资源能够进行有效地管理和分配,使整个系统能高效率得运行。操作系统的服务是越来越到位了。操作系统主要有五大功能:处理机管理、存储器管理、设备管理、文件管理、用户接口。我们现在使用的大多是PC机,都是只有一块CPU,而有时却要在计算机上运行多个程序,那么每道程序在什么时候使用CPU,这需要合理得分配协调才行,操作系统关于处理机的分配有相应的调度算法,这些工作都有操作系统帮你代劳。内存储器是存放程序与数据的,如何存放才能井井有条,互不干扰,而且能充分合理的利用有限空间,这都需要操心,这一切也是操作系统的事。当你要使用设备的时候,例如要使用打印机,只要单击打印机按钮即可将内容传到打印机进行后台打印,这一切也都是因为有了操作系统,才可以这么轻松的调用外部设备,还不影响当前处理的工作,所以对设备的管理也是非常重要的。文件的操作对于每个用户来说是家常便饭,每次存取文件只需知道地点和文件名即可,你可曾想过你要存取的文件是放在那个道那个扇区上么?有时你不想让自己的文件被外人看到,还可设置权限。这些幕后的工作都由操作系统完成,你只需要使用文件名对文件进行操作就可以了。操作系统还为用户使用提供了两种方式的接口:命令接口和系统调用接口。命令接口可使用户交互的使用计算机,敲入一条命令,系统响应返回结果,用户根据结果再敲入下一条命令,如此反复。Windows中开始菜单下里的运行,也可执行命令。系统调用是为编程人员提供的,每个系统调用都是一

个能完成特定功能的子程序,这样编程人员就可站在操作系统的肩膀上编制程序,没必要所有的功能都从头编起,操作系统提供的功能只需申请调用即可。

每当我们打开计算机,启动成功后,首先映入眼帘的就是操作系统的界面。我们所做的一切的工作都是在操作系统之上来完成的。可是谁也不会去想:为什么鼠标的拖拖曳曳就能完成对文件、磁盘、各种软硬件资源的管理;谁也没意识到是因为有了操作系统的支撑,我么才那么方便的使用计算机。直到有一天,开机后发觉整个屏幕黑糊糊得一片,看不到蓝天白云急得象热锅上的蚂蚁时,才知道操作系统是多么得重要,明白了所有的程序的运行原来是离不开操作系统的。这就是“拥有了不知道珍惜,失去后才知道宝贵”的操作系统版的解释。如果有一天离开了操作系统,我们的计算机也就成了一堆废铁,什么事也干不了。

更多相关推荐:
学习操作系统心得体会

学习操作系统心得体会摘要:操作系统是控制其他程序运行,管理系统资源并为用户提供操作界面的系统软件的集合。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基…

《 操作系统》心得体会

操作系统心得体会在这个学期通过学习操作系统教程这门课我对计算机操作系统有了深刻的了解计算机操作系统是铺设在计算机硬件上的多层系统软件不仅增强了系统的功能而且还隐藏了对硬件操作的细节由它实现了对计算机硬件操作的抽...

操作系统课程设计个人心得

课程设计心得体会

Linux操作系统总结与心得

一知识总结我很荣幸选了“Linux操作系统”这门课程,因为在这门课程的学习过程中,我们通过老师的讲解以及在网上查阅资料,学到了许多关于Linux操作系统的知识,更重要的是学会了如何应用与操作Linux操作系统,…

操作系统心得

操作系统使用心得上一篇下一篇20xx0927162147个人分类AIX查看0评论0评分00AIX是IBM公司开发的业界领先的优秀商务Unix操作系统在可靠性可用性开放性扩展性高性能安全性等方面都非常突出尤其是在...

操作系统实验心得

1-1:通过这次小实验,是我更加了解Linux一些常用指令的操作以及其作用,对于一个刚开始接触lniux操作系统的初学者来说非常有用,助于以后能够更进一步学习Linux操作系统。1-2:在实验过程中,使用VI编…

计算机操作系统课程培训学习体会及总结

广西南宁培训点20xx年x月20-22日,我们有幸参加了教育部全国高校教师操作系统培训中心对国家精品课程《计算机操作系统课程》的课程培训,聆听了刘乃琦、浦晓蓉两位教授的讲座,颇受启发,收获很多。回顾三天来的学…

孟照彬的有效教学操作系统心得体会

学习孟照彬有效教学心得体会南海路小学白秀霞孟照彬教授的有效教育深入课堂将课堂研究作为自己研究的重心其中给我印象最深的是MS教育操作系统的基本方式中谈到教学有法但教无定法贵在得法其中基本上课方式要素组合方式指的是...

孟照彬的有效教学操作系统心得体会

孟照彬的有效教学操作系统心得体会孟教授提出了孟照彬的教育模式该教育模式的核心理念是继续了陶行知的实践与教育理论把国际视野与本土视野相结合深入课堂将课堂研究作为自己研究的重心其中给我印象最深的是MS教育操作系统的...

操作系统SPOOLing系统实现课程设计心得

操作系统课程设计心得体会

操作系统课程设计报告

一实验目的在该部分中根据设计题目的要求充分地分析和理解问题叙述系统的功能要求明确问题要求做什么以及限制条件是什么1输入的形式和输入值的范围2输出的形式3程序所能达到的功能二实验原理算法思想银行家算法是避免死锁的...

操作系统课程设计

黄冈师范学院课程设计报告课程名称计算机操作系统设计题目银行家算法院系计算机科学与技术学院专业软件工程组别软工06级02班组员姓名何银兵彭晓霞日期07年12月28日08年1月4日指导教师张瑞红成绩目录第一章需求分...

操作系统心得体会(16篇)