2024年5月4日发(作者:)

软件系统设计收获和心得

软件系统设计收获和心得

转眼间,学习了一个学期的计算机操作系统课程即将结束。在这个学期中,通过老师

的悉心教导,让我深切地体会到了计算机操作系统的一些原理和具体操作过程。在学习操

作系统之前,我只是很肤浅地认为操作系统只是单纯地讲一些关于计算机方面的操作应用,

并不了解其中的具体操作过程和实用性。通过这一学期的学习,我才知道操作系统

(OperatingSystem,简称OS)是管理计算机系统的全部硬件资源包括软件资源及数据资

源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源

最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。

经过一个学期的学习,我也知道了计算机操作系统是铺设在计算机硬件上的多层系统

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

件操作的多层次的抽象。操作系统的一些原理在生活中也有所应用,以下是我通过这一学

期的学习,把操作系统的一些原理联系生活所得的心得体会:

操作系统是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;

改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,

为用户提供方便的、有效的、友善的服务界面。计算机操作系统是铺设在计算机硬件上的

多层系统软件,不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,由它实现了对

计算机硬件操作的抽象。操作系统的一些原理在生活中的应用主要有以下几个,结合生活

中的例子,可以化抽象为具体,我们会更加清楚地了解到其原理与操作过程:

1.生产—消费者问题

在实际的操作系统操作过程中,经常会碰到如下场景:某个模块负责产生数据,这些

数据由另一个模块来负责处理(此处的模块是广义的,可以是类、函数、线程、进程等)。

产生数据的模块,就形象地称为生产者;而处理数据的模块,就称为消费者。

单单抽象出生产者和消费者,还够不上是生产者—消费者问题。该问题还需要有一个

缓冲区处于生产者和消费者之间,作为一个中介。生产者把数据放入缓冲区,而消费者从

缓冲区取出数据。

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

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

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

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

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

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

死锁的产生是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相

等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产

生了死锁,这些永远在互相等待的进程称为死锁进程。由于资源占用是互斥的,当某个进

程提出申请资源后,使得有关进程在无外力协助下,永远分配不到必需的资源而无法继续

运行,这就产生了一种特殊现象死锁。我觉得操作系统所讲的死锁就好像两个人竟过独木

桥,两辆车竟过单行桥等阻塞现象,原因是共享资源,即道路。