- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统课程设计-linux系统下实现PV操作精选
计算机科学与通信工程学院操作系统课程设计报告题目:linux系统下实现PV操作班级:软件工程1401 姓名: 学号:3指导老师:2016年12月27日实验题目Linux 系统简单使用认识Linuxubuntu安装终端的简单使用python3.5.2源码安装多线程和多进程同步方法解决水果分配问题:水果分配的问题:桌上有一只盘子,每次只能放入5只水果。爸爸专放苹果,妈妈专放橘子,一个儿子专等吃盘子中的橘子,一个女儿专等吃盘子中的苹果.用P,V操作实现爸爸、妈妈、儿子、女儿进程的同步控制。补充:设有两个篮子,分别有若干个苹果或橘子,爸爸和妈妈将每次从水果篮子中拿出一个水果放入水果盘中,儿子女儿则挑选各自喜欢的水果。分析问题,写出伪代码线程实现进程实现实验目的和要求认识和学会使用linux系统:Linux 是一种可以在PC机上执行的类似UNIX的操作系统,是一个完全免费的操作系统。1991年,芬兰学生Linus Torvalds开发了这个操作系统的核心部分,因为是Linus 改良的minix系统,故称之为Linux.理解线程和进程的互斥和同步原理:同步是操作系统级别的概念,是在多道程序的环境下,存在着不同的制约关系,为了协调这种互相制约的关系,实现资源共享和进程协作,从而避免进程之间的冲突,引入了进程同步。进程互斥是间接制约关系。当一个进程进入临界区使用临界资源时,另一个进程必须等待。只有当使用临界资源的进程退出临界区后,这个进程才会解除阻塞状态。使用信号量和互斥量解决问题:通过设置一个表示资源个数的信号量S,通过对信号量S的P和V操作来实现进程的的互斥。通过设置一个表示资源个数的信号量S,通过对信号量S的P和V操作来实现进程的的互斥。P和V操作分别来自荷兰语Passeren和Vrijgeven,分别表示占有和释放。P V操作是操作系统的原语,意味着具有原子性。P操作首先减少信号量,表示有一个进程将占用或等待资源,然后检测S是否小于0,如果小于0则阻塞,如果大于0则占有资源进行执行。V操作是和P操作相反的操作,首先增加信号量,表示占用或等待资源的进程减少了1个。然后检测S是否小于0,如果小于0则唤醒等待使用S资源的其它进程。环境配置安装ubuntu下载系统镜像,ubuntu-16.04.1-desktop-amd64.iso制作启动U盘,使用Ultraiso软件将系统镜像写入U盘开机进入BIOS界面,从U盘启动。对磁盘分区,等待安装结束。设置root密码,sudo passwd root 命令后输入两遍密码。熟悉ubuntu的使用常用命令:su命令,切换用户pwd命令,打印当前工作目录的绝对路径ls命令,打印当前目录下的文件cd命令,切换工作目录mv命令,移动文件或目录rm命令,删除文件或目录shutdown命令,关闭计算机reboot命令,重启电脑tar命令,解压命令安装vim编辑器在终端下运行apt-get install –y vim即可。安装结束后,输入vim命令,显示如下图就说明安装成功:Figure 1安装vim后输入vim显示的结果源码安装python3.5.2因为linux内置的python的版本为2.7.5,所以为了程序设计的方便,使用3.5.2版本的。终端下输入python即可进入python交互模式。安装前:Figure 2内置python运行结果安装步骤:进入下载目录,tar –zxvf Python-3.5.2.tar.gz 解压到当前目录下进入解压目录,cd Python-3.5.2验证系统配置,./configure编译和安装,make make install建立软链接,在/usr/bin目录下生成python3的软链接文件安装结果:Figure 3python3安装结果设计思路题目分析:father、mather、son、daughter是四个线程或进程。盘子plate是它们共享的变量,对盘子的操作要互斥。Father和daughter要对apple同步。Mother和son要对orange同步。伪代码:father:while(True):p(empty)p(mutex)put applev(mutex)v(apple)mother:while(True): p(empty) p(mutex) put orange v(mutex) v(orange)son:while(True): p(orange) p(mutex) get orange v(mutex) v(empty)daughter:while(True): p(apple) p(mutex) get apple v(mutex)
您可能关注的文档
- 微控综合系统设计课程设计-基于51单片机的步进电机微控系统设计精选.docx
- 微带wilkinson功分器的仿真设计实验报告精选.docx
- 微型机械液晶引流计算机辅助计算软件设计本科毕业设计论文精选.docx
- 微型电动货车总体设计及外观设计_毕业论文设计精选.docx
- 微机原理与接口技术课程设计-利用定时器生成随机数与数码管显示的设计与实现精选.docx
- 微机原理与接口技术课程设计报告-基于PC机的方波发生器精选.docx
- 微机原理课程设计-吃豆子精选.docx
- 引力波电子商务ERP软件网店进销存专业版精选.ppt
- 建筑风格及案例精选.ppt
- 微机原理课程设计-太阳能热水器的数显控制精选.docx
- 2024年江西省寻乌县九上数学开学复习检测模拟试题【含答案】.doc
- 2024年江西省省宜春市袁州区数学九上开学学业水平测试模拟试题【含答案】.doc
- 《GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语》.pdf
- 中国国家标准 GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语.pdf
- GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- 《GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构》.pdf
- 中国国家标准 GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 中国国家标准 GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 《GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南》.pdf
文档评论(0)