资源简介
用C语言链表实现进程转换,阻塞变就绪,就绪变执行,执行变阻塞三种状态的转换
代码片段和文件信息
#include
#include
//执行结点
typedef struct run{
int data;
struct run *next;
}run*runlist;
//就绪节点
typedef struct ready{
int data;
struct ready *next;
}ready*readylist;
//阻塞节点
typedef struct block{
int data;
struct block *next;
}block*blocklist;
//执行队列
runlist runlist_creat(){
run *L*p;
L=(run *)malloc(sizeof(run));
p=(run *)malloc(sizeof(run));
if(p==NULL||L==NULL){
exit(1);
}
L->next=NULL;
int x=5;
p->data=x;
p->next=L->next;
L->next=p;
printf(“执行指针为:%d\n“p->data);
return L;
}
//就绪队列
readylist readylist_creat(){
int i;
int a[5]={21546};
ready *L;
L=(ready *)malloc(sizeof(ready));
ready *p*s;
L->next=NULL;
s=L;
//依次将数组a中的5个元素插入单链表中
for(i=0; i<5; i++)
{
p=(ready *)malloc(sizeof(ready));
p->data=a[i];
p->next=s->next;
s->next=p;
s=s->next;
}
//将该链表显示
p=L->next;
printf(“就绪指针为:%d\n“a[0]);
printf(“就绪队列为:“);
while(p)
{
printf(“%d “p->data);
p=p->next;
}
return L;
}
//阻塞队列
blocklist blocklist_creat(){
int i;
int a[5]={12473};
block *L;
L=(block *)malloc(sizeof(block));
block *p*s;
L->next=NULL;
s=L;
//依次将数组a中的5个元素插入单链表中
for(i=0; i<5; i++)
{
p=(block *)malloc(sizeof(block));
p->data=a[i];
p->next=s->next;
s->next=p;
s=s->next;
}
//将该链表显示
p=L->next;
printf(“\n阻塞指针为:%d\n“a[0]);
printf(“阻塞队列为:“);
while(p)
{
printf(“%d “p->data);
p=p->next;
}
return L;
}
//阻塞变就绪
void block_to_ready(readylist pr_headblocklist pb_head){
readylist pr_temp =pr_head;
readylist pr_new;
blocklist pb_temp =pb_head;
for(;pr_temp->next!=NULL;pr_temp=pr_temp->n
- 上一篇:二叉树遍历
- 下一篇:C++ 超市管理系统
相关资源
- C++,链表,通讯录系统
- 哲学家进餐实验报告
- 《基于Linux的设备分配及磁盘调度》
- 操作系统生产者与消费者综合性实验
- 用C语言实现异质链表
- C语言实现调度算法源代码-山东大学操
- 操作系统文件管理系统c++
- 基于FCFS和SPF的进程管理系统可用资源
- 操作系统课程设计 linux文件系统
- 已知head为单链表的表头指针,链表中
- C++实现双向链表完整代码
- 进程管理 执行 唤醒 阻塞 结束
- 计算N阶乘n>20)用链表形式
- c++写的操作系统课程设计:模拟文件
- 操作系统文件管理系统模拟实现
- c语言实现的单链表和循环链表
- C++图书信息管理系统使用链表写的
- 处理机调度的模拟实现_C语言
- 操作系统课程设计,设备分配与磁盘
- 多道批处理系统两级调度的模拟
- 空闲分区链源代码
- 操作系统 4种经典同步互斥问题
- 广工操作系统课设:多道批处理系统
- 操作系统抢占式动态优先级调度算法
- 操作系统课设__多道批处理系统两级调
- C++实现通用链表
- 计算机操作系统实验报告,C语言实现
- 操作系统基本分页存储系统
- 数据结构 通讯录管理 课程设计C++单链
- 用链表实现多项式加减法运算
评论
共有 条评论