• 大小: 4.28KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-02-23
  • 标签: c++  

资源简介

Linux进程调度(基于优先级时间片调度算法)

资源截图

代码片段和文件信息

#include
#define MAX 10
typedef struct task_struct
{
    char name[10];           /*进程名称*/
    int number;              /*进程编号*/
    float come_time;         /*到达时间*/
    float run_begin_time;     /*开始运行时间*/
    float run_time;          /*运行时间*/
    float run_end_time;      /*运行结束时间*/
    int priority;           /*优先级*/
    int run_flag;          /*调度标志*/
    int start_flag;     //是否为第一次开始调度
} tasks;
task_struct IN[MAX]PCB[MAX][MAX];
int P[6];
int temp=0;
int counter; /*实际进程个数*/
int time_counter=0;
int poutput(); /*调度结果输出*/
int time();
int pinput();//判断是否所有的进程都被执行过

int main()
{

    pinput();
    printf(“时间片轮转算法。\n\n“);
    time();
    poutput();
}

int time()
{
    float time_temp=0;

    struct task_struct  copy_PCB[MAX][MAX];//备份
    for(int v=1; v<=temp; v++)
    {
for(int u=1;u<=P[v];u++)
{
copy_PCB[v][u]=PCB[v][u];//对进程的初始化信息备份
}
    }
time_temp=PCB[1][1].come_time;
for(int i=1;i<=temp;i++)
{
while (PCB[i][

评论

共有 条评论