亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? os4.c

?? 操作系統上機os_4設備管理
?? C
字號:
#include "os4head1.h"
int dcti=4;/*DCT現有數目*/
void help()
{
    printf("\nhelpfile:");
    printf("\n\th.  helpfile.");
    printf("\n\t1.  add an equipment.");
    printf("\n\t2.  delete one equipment.");
    printf("\n\t3.  apply an equipment.");
    printf("\n\t4.  restitute an equipment.");
    printf("\n\tQ.  exit.\n");
}
int add()
{
    char ch,s[20];
    int i;
    if (dcti >= 10)
        return 0;
    else
    {
        printf("enter type(I\\O):");
        scanf("%1s",&ch);
        if(ch=='i'||ch=='I')
    	{
            SDT[dcti].type=1;
            DCT[dcti].type=1;
    	}
        else 
    	{
            SDT[dcti].type=0;
            DCT[dcti].type=0;
    	}
        printf("\nenter signing:");
            scanf("%s",s);getchar();
            strcpy(SDT[dcti].signing,s);
            strcpy(DCT[dcti].deviceid,s);
        SDT[dcti].next=&DCT[dcti];
        SDT[dcti].driveradd=rand()%2000;
        DCT[dcti].state=0;
        printf("\nchoose coct 1.IN1 2.IN2 3.OUT1 4.OUT2 :");
        scanf("%d",&i);getchar();
        DCT[dcti].next=&COCT[i-1];
        DCT[dcti].time=10;/**needn't**/
        DCT[dcti].head=NULL;
    }
    dcti++;
}
int del()
{
    char str[22];
    int i=0;
    printf("enter signing to delete:");
    scanf("%s",str);
    while (i<dcti)
    {
        if(strcmp(SDT[i].signing,str)==0)
            break;
        i++;
    }
    if(strcmp(SDT[i].signing,str)==0)
    {
        if (DCT[i].state==1)
            return NULL;
        while (i<dcti-1)
    	{
            SDT[i]=SDT[i+1];
            DCT[i]=DCT[i+1];
        	i++;
        };dcti--;
    }
    else 
    	;
}
int apply()
{
    char s[22];
    int i=0;
    processnode * p,*q;
    printf("\nenter the processname:");
    scanf("%s",s);
    p=malloc(sizeof(processnode));
    p->next=NULL;
    strcpy(p->name,s);
    printf("choose device <signing>: ");
    while (i<dcti)
    {
        printf("\n\t%s",SDT[i].signing);
        i++;
    }
    printf("\n");
    scanf("%s",s);
    i=0;
    while (i< dcti && strcmp(DCT[i].deviceid,s)!=0)
    {
        i++;
    }
    if (strcmp(DCT[i].deviceid,s)==0)
    {
        if(DCT[i].state==0)
    	{
            DCT[i].state=1;
            if (DCT[i].next->state==1)
    		{
                if(DCT[i].next->head==NULL)
        		{
                    DCT[i].next->head=p;
                    DCT[i].next->end=p;
                	return 1;
        		}
        		else
        		{
                    q=DCT[i].next->head;
                        while ( q->next!=NULL)
                    		q=q->next;
                	q->next=p;
                    DCT[i].next->end=p;
                	return 1;
        		}
    		}
        	else
    		{
                DCT[i].next->state=1;
                return 1;
    		}
    	}

        if (DCT[i].head==NULL)
            DCT[i].head=p;
        else
    	{
            q=DCT[i].head;
            while ( q->next!=NULL)
                q=q->next;
            q->next=p;
    	}
        printf("");
    }
    else printf("apply device name wrong.\n");
}
int restitute()
{
    char s[22];
    int i=0,j=0,flag=0;
    processnode * p,*q;
    printf("enter the device signing:");
    scanf("%s",s);
    while (i<dcti && strcmp(DCT[i].deviceid,s)!=0)
        i++;
    if(strcmp(DCT[i].deviceid,s)==0)
    {
        if(DCT[i].head==NULL)
    	{
            DCT[i].state=0;
        	j=0;
            while(j<dcti)
    		{
                if(strcmp(DCT[j].next->controllerid,DCT[i].next->controllerid)==0)
            		flag++;
        		j++;
    		}
            if(flag>=2)
    		{
                if(DCT[i].next->head==NULL)
                    DCT[i].next->state=0;
                return 1;
    		}
            else/*通道只有一個設備*/
    		{
                if(DCT[i].next->head!=NULL)
                /*通道隊列不空*/
        		{
                    if(DCT[i].next->head==DCT[i].next->end)
                    {   DCT[i].next->head=DCT[i].next->end=NULL;return 1;}
            		else
        			{
                        p=DCT[i].next->head;
                        DCT[i].next->head=p->next;
                		free(p);
                		return 1;
        			}
        		}
        		else
        		{
                    DCT[i].next->state=0;
                	return 1;
        		}
    		}
    	}
        else 
    	{
            p=DCT[i].head;
            DCT[i].head=p->next;
            free(p);
            /*有等待進程*/
    	}
    }
    else printf("restitute. device name wrong.");
}
show()
{
    int i=0;
    processnode *p;
    printf("\nSDT:");
    while (i<dcti)
    {
        printf("\n\t%s",SDT[i].signing);
        i++;
    }
    printf("\nDCT        type state COCT         waitingDEVICElist:");
    i=0;
    while (i<dcti)
    {
        printf("\n%-10s",SDT[i].signing);
        if (DCT[i].type==1)
    	{
            printf("%4s","I");
    	}
        else 
    	{
            printf("%4s","O");
    	}
        printf("%4d",DCT[i].state);
        printf("%10s",DCT[i].next->controllerid);
        p=DCT[i].head;
        while (p!=NULL)
    	{
            printf("%8s",p->name);
            p=p->next;
    	}
        i++;
    }
    printf("\nCOCT         state    waintinglist:");
    i=0;
    while (i<4)
    {
        printf("\n%-10s %4d",COCT[i].controllerid,COCT[i].state);
        p=COCT[i].head;
        while (p!=NULL)
    	{
            printf("%8s",p->name);
            p=p->next;
    	}
        i++;
    }
    
}
int main()
{
    char command;
    SDT[0].type=1;
    strcpy(SDT[0].signing,"mouse");
    SDT[0].next=&DCT[0];
    SDT[0].driveradd=rand()%2000;
    DCT[0].type=1;
    strcpy(DCT[0].deviceid,"mouse");
    DCT[0].state=0;
    DCT[0].next=&COCT[0];
    DCT[0].time=10;/**needn't**/
    DCT[0].head=NULL;
    /******************sdt0dct0***********************/
    SDT[1].type=1;
    strcpy(SDT[1].signing,"keyboard");
    SDT[1].next=&DCT[1];
    SDT[1].driveradd=rand()%2000;
    DCT[1].type=1;
    strcpy(DCT[1].deviceid,"keyboard");
    DCT[1].state=0;
    DCT[1].next=&COCT[0];
    DCT[1].time=10;/**needn't**/
    DCT[1].head=NULL;
/***************************dct1******************************/
    SDT[2].type=0;
    strcpy(SDT[2].signing,"display");
    SDT[2].next=&DCT[2];
    SDT[2].driveradd=rand()%2000;
    DCT[2].type=0;
    strcpy(DCT[2].deviceid,"display");
    DCT[2].state=0;
    DCT[2].next=&COCT[2];
    DCT[2].time=10;/**needn't**/
    DCT[2].head=NULL;
/***************************dct2******************************/
    SDT[3].type=0;
    strcpy(SDT[3].signing,"soundbox");
    SDT[3].next=&DCT[3];
    SDT[3].driveradd=rand()%2000;
    DCT[3].type=0;
    strcpy(DCT[3].deviceid,"soundbox");
    DCT[3].state=0;
    DCT[3].next=&COCT[2];
    DCT[3].time=10;/**needn't**/
    DCT[3].head=NULL;
    /***************************dct3******************************/
    help();
    while(1)
    {
        clrscr();
        show();
        help();
        printf("\n-");
        scanf("%c",&command);
        switch (command)
    	{
            case '1':
            	add();
            	break;
            case '2':
            	del();
            	break;
            case '3':
            	apply();
            	break;
            case '4':
                restitute();
            	break;
            case 'q':
            case 'Q':
            	exit(0);
            	break;
            case 'h':
            	help();	
            	break;
            default :
            	break;
    	}
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲大片精品永久免费| 欧美国产精品中文字幕| 日韩国产欧美三级| 精品国产乱码久久久久久夜甘婷婷| 图片区日韩欧美亚洲| 91精品久久久久久久99蜜桃| 视频一区在线播放| 久久影院午夜片一区| 国产99一区视频免费| 亚洲天堂2014| 欧美色手机在线观看| 麻豆精品在线看| 亚洲国产精品99久久久久久久久| 99精品偷自拍| 亚洲免费在线视频一区 二区| 欧美视频中文字幕| 看片的网站亚洲| 国产精品传媒入口麻豆| 欧美在线一区二区三区| 日韩国产精品久久久| 国产欧美精品一区| 欧美在线观看一二区| 久久91精品久久久久久秒播| 国产精品精品国产色婷婷| 欧美色爱综合网| 国产精品综合在线视频| 一区二区三区中文字幕电影| 日韩欧美www| 色婷婷久久99综合精品jk白丝| 日本aⅴ免费视频一区二区三区| 国产欧美一区二区三区沐欲| 色8久久人人97超碰香蕉987| 久久99久久精品| 亚洲精品久久久久久国产精华液 | 成人av免费观看| 亚洲五码中文字幕| 国产欧美综合在线观看第十页| 欧美综合亚洲图片综合区| 国内外成人在线| 亚洲国产欧美日韩另类综合 | 国产剧情在线观看一区二区| 亚洲一区二区在线免费观看视频| 欧美成人bangbros| 欧美综合久久久| 成人黄色一级视频| 国产乱国产乱300精品| 亚洲高清免费一级二级三级| 国产三区在线成人av| 欧美一区二区成人6969| 色综合久久久久综合体| 国产毛片精品一区| 麻豆成人综合网| 亚洲第一成人在线| 亚洲视频免费在线观看| 国产欧美视频在线观看| 日韩视频123| 欧美精品 国产精品| 在线视频你懂得一区| 99久久精品费精品国产一区二区| 精品写真视频在线观看| 日韩精品成人一区二区在线| 亚洲香肠在线观看| 亚洲男人的天堂网| 亚洲天堂免费在线观看视频| 国产精品久久久久一区二区三区共| 日韩欧美国产三级| 欧美一区二区在线视频| 欧美日韩亚洲另类| 欧美午夜电影网| 在线视频综合导航| 欧美日韩在线一区二区| 在线观看国产精品网站| 91天堂素人约啪| 99v久久综合狠狠综合久久| 99re视频这里只有精品| av在线不卡观看免费观看| 99精品久久只有精品| 美女一区二区久久| 免费成人在线播放| 久久av资源站| 国产一区二区精品久久91| 国产伦精品一区二区三区免费 | 日韩欧美一区二区视频| 67194成人在线观看| 91精品国产综合久久久蜜臀图片| 欧美一级片免费看| 精品精品国产高清a毛片牛牛| 日韩精品专区在线影院重磅| 精品国产91亚洲一区二区三区婷婷| 欧美不卡一区二区三区| 久久婷婷综合激情| 国产三级精品视频| 综合色中文字幕| 一区二区国产视频| 男人操女人的视频在线观看欧美| 青青草原综合久久大伊人精品| 九九精品一区二区| 国产99精品国产| 91啪亚洲精品| 制服丝袜国产精品| 欧美激情一区二区在线| 亚洲啪啪综合av一区二区三区| 亚洲午夜在线电影| 久久66热re国产| 91在线国内视频| 欧美老女人第四色| 国产人成亚洲第一网站在线播放| 中文字幕综合网| 天天综合网 天天综合色| 国产乱码精品一区二区三区av| 97成人超碰视| 欧美一区二区精品久久911| 久久嫩草精品久久久精品| 成人欧美一区二区三区视频网页| 亚洲国产aⅴ天堂久久| 麻豆国产欧美日韩综合精品二区| 床上的激情91.| 制服丝袜亚洲精品中文字幕| 久久久久99精品国产片| 亚洲一区二区三区四区的| 九九国产精品视频| 色视频一区二区| 久久精品日韩一区二区三区| 樱桃视频在线观看一区| 国产乱一区二区| 欧美挠脚心视频网站| 中文字幕不卡在线播放| 午夜精品一区二区三区三上悠亚| 成人三级伦理片| 日韩欧美在线网站| 亚洲一区二区三区中文字幕| 国产精品中文字幕日韩精品| 欧美猛男超大videosgay| 国产精品丝袜在线| 精品中文字幕一区二区小辣椒| 94色蜜桃网一区二区三区| 精品人伦一区二区色婷婷| 亚洲国产一区视频| 成人免费视频免费观看| 日韩欧美二区三区| 肉色丝袜一区二区| 91麻豆精品秘密| 久久嫩草精品久久久久| 久久夜色精品国产欧美乱极品| 久久综合九色综合欧美就去吻| 一区二区三区四区在线免费观看 | 国产精品久久久久久久午夜片| 日韩福利电影在线| 色94色欧美sute亚洲线路二| 国产精品―色哟哟| 国产精品一级在线| 精品少妇一区二区三区免费观看| 亚洲风情在线资源站| 色综合色狠狠综合色| 国产精品你懂的| 国产精品一区一区| 久久综合色天天久久综合图片| 日韩高清电影一区| 欧美日韩国产不卡| 亚洲成人中文在线| 色综合久久久久综合体| 综合婷婷亚洲小说| heyzo一本久久综合| 国产精品无遮挡| 成人激情动漫在线观看| 国产女人aaa级久久久级| 国产福利一区在线| 国产日韩欧美高清| 国产91清纯白嫩初高中在线观看| 久久九九久精品国产免费直播| 久久99精品一区二区三区| 欧美精品一区在线观看| 国产综合一区二区| 国产三级精品三级| 处破女av一区二区| 综合久久综合久久| 色婷婷综合久久久中文一区二区 | 久久嫩草精品久久久精品一| 国产尤物一区二区在线| 国产日本一区二区| av不卡一区二区三区| 亚洲你懂的在线视频| 欧美综合久久久| 日韩av在线发布| 日韩欧美久久一区| 国产精品综合网| 亚洲人成小说网站色在线| 在线观看精品一区| 日本不卡免费在线视频| xnxx国产精品| 高清久久久久久| 亚洲精品国产第一综合99久久| 欧美日韩午夜影院| 国产又黄又大久久| 亚洲免费三区一区二区| 欧美浪妇xxxx高跟鞋交| 韩国精品一区二区| 亚洲三级免费观看| 欧美一级日韩免费不卡| 国产.欧美.日韩|