操作系统
文章平均质量分 78
欧米伽w
这个作者很懒,什么都没留下…
展开
-
操作系统03——生产者消费者线程同步问题实验
主要任务采用条件变量和互斥锁实现生产者消费者线程同步一、生产者消费者问题生产者进程生产产品,将产品提供给消费者进程消费。在两者之间设置有缓冲区,生产者将产品放入缓冲区,消费者从缓冲区中取走产品。两者之间需要保持同步,消费者不可以从空的缓冲区中取产品,生产者进程也不可以向已经装满产品的缓冲区投放产品。二、问题分析可以用一个数组buffer[n]来表示大小为n的缓冲区。每当投入一个产品时,buffer中的数组单元指针in加1每当取出一个产品时,buffer中的数组单元指针out加1由于buf原创 2021-10-24 01:28:53 · 3132 阅读 · 1 评论 -
操作系统02——线程同步问题
一、基本概念基本任务协调合作进程的执行次序,使并发执行的各进程间能按照一定规则(或时序)有效的共享资源,以及相互协作,从而使程序的执行具有可再现性制约关系间接相互制约关系当一个进程使用某临界资源时,另一个想使用该临界资源的进程必须等待。由于共享同一资源形成的关系,也成为互斥临界资源是一次仅允许一个进程使用的共享资源。各进程采取互斥的方式,实现共享的资源称作临界资源。属于临界资源的硬件有,打印机,磁带机等;软件有消息队列,变量,数组,缓冲区等。诸进程间采取互斥方式,实现对这种资源的共享原创 2021-10-23 21:26:48 · 279 阅读 · 0 评论 -
操作系统01——线程的概念以及Linux下的创建方法
一、线程概念进程进程是程序的一次执行线程线程(thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一个线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。线程是独立调度和分派的基本单位。同一进程中的多个线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等。但同一进程中的多个线程有各自的调用栈(call stack),自己的寄存器环境(register context),自己的线程本地存储原创 2021-10-23 17:11:27 · 212 阅读 · 0 评论