操作系统课程设计linux系统下实现pv操作大学论文.doc

操作系统课程设计linux系统下实现pv操作大学论文.doc

ID:10954889

大小:380.23 KB

页数:19页

时间:2018-07-09

操作系统课程设计linux系统下实现pv操作大学论文.doc_第1页
操作系统课程设计linux系统下实现pv操作大学论文.doc_第2页
操作系统课程设计linux系统下实现pv操作大学论文.doc_第3页
操作系统课程设计linux系统下实现pv操作大学论文.doc_第4页
操作系统课程设计linux系统下实现pv操作大学论文.doc_第5页
资源描述:

《操作系统课程设计linux系统下实现pv操作大学论文.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、计算机科学与通信工程学院操作系统课程设计报告题目:linux系统下实现PV操作班级:软件工程1401姓名:学号:3指导老师:2016年12月27日19/19目录一、实验题目3二、实验目的和要求3三、环境配置4四、设计思路6五、代码实现7六、总结1719/19一、实验题目1.Linux系统简单使用(1)认识Linux(2)ubuntu安装(3)终端的简单使用(4)python3.5.2源码安装2.多线程和多进程同步方法解决水果分配问题:水果分配的问题:桌上有一只盘子,每次只能放入5只水果。爸爸专放苹果,妈妈专放橘子,一个儿子专

2、等吃盘子中的橘子,一个女儿专等吃盘子中的苹果.用P,V操作实现爸爸、妈妈、儿子、女儿进程的同步控制。补充:设有两个篮子,分别有若干个苹果或橘子,爸爸和妈妈将每次从水果篮子中拿出一个水果放入水果盘中,儿子女儿则挑选各自喜欢的水果。(1)分析问题,写出伪代码(2)线程实现(3)进程实现二、实验目的和要求1.认识和学会使用linux系统:Linux是一种可以在PC机上执行的类似UNIX的操作系统,是一个完全免费的操作系统。1991年,芬兰学生LinusTorvalds开发了这个操作系统的核心部分,因为是Linus改良的minix系

3、统,故称之为Linux.2.理解线程和进程的互斥和同步原理:19/19同步是操作系统级别的概念,是在多道程序的环境下,存在着不同的制约关系,为了协调这种互相制约的关系,实现资源共享和进程协作,从而避免进程之间的冲突,引入了进程同步。进程互斥是间接制约关系。当一个进程进入临界区使用临界资源时,另一个进程必须等待。只有当使用临界资源的进程退出临界区后,这个进程才会解除阻塞状态。1.使用信号量和互斥量解决问题:通过设置一个表示资源个数的信号量S,通过对信号量S的P和V操作来实现进程的的互斥。通过设置一个表示资源个数的信号量S,通过

4、对信号量S的P和V操作来实现进程的的互斥。P和V操作分别来自荷兰语Passeren和Vrijgeven,分别表示占有和释放。PV操作是操作系统的原语,意味着具有原子性。P操作首先减少信号量,表示有一个进程将占用或等待资源,然后检测S是否小于0,如果小于0则阻塞,如果大于0则占有资源进行执行。V操作是和P操作相反的操作,首先增加信号量,表示占用或等待资源的进程减少了1个。然后检测S是否小于0,如果小于0则唤醒等待使用S资源的其它进程。一、环境配置1.安装ubuntu(1)下载系统镜像,ubuntu-16.04.1-deskto

5、p-amd64.iso(2)制作启动U盘,使用Ultraiso软件将系统镜像写入U盘(3)开机进入BIOS界面,从U盘启动。(4)对磁盘分区,等待安装结束。(5)设置root密码,sudopasswdroot命令后输入两遍密码。2.熟悉ubuntu的使用19/19常用命令:(1)su命令,切换用户(2)pwd命令,打印当前工作目录的绝对路径(3)ls命令,打印当前目录下的文件(4)cd命令,切换工作目录(5)mv命令,移动文件或目录(6)rm命令,删除文件或目录(7)shutdown命令,关闭计算机(8)reboot命令,重

6、启电脑(9)tar命令,解压命令1.安装vim编辑器在终端下运行apt-getinstall–yvim即可。安装结束后,输入vim命令,显示如下图就说明安装成功:Figure1安装vim后输入vim显示的结果2.源码安装python3.5.2因为linux内置的python的版本为2.7.5,所以为了程序设计的方便,使用3.5.2版本的。终端下输入python即可进入python交互模式。19/19安装前:Figure2内置python运行结果安装步骤:(1)进入下载目录,tar–zxvfPython-3.5.2.tar.g

7、z解压到当前目录下(2)进入解压目录,cdPython-3.5.2(3)验证系统配置,./configure(4)编译和安装,make&&makeinstall(5)建立软链接,在/usr/bin目录下生成python3的软链接文件安装结果:Figure3python3安装结果一、设计思路1.题目分析:father、mather、son、daughter是四个线程或进程。盘子plate是它们共享的变量,对盘子的操作要互斥。Father和daughter要对apple同步。Mother和son要对orange同步。2.伪代码:

8、father:while(True):p(empty)19/19p(mutex)putapplev(mutex)v(apple)mother:while(True):p(empty)p(mutex)putorangev(mutex)v(orange)son:while(True):p(or

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。