C语言用户接口实验代码,实验一操作系统用户接口实验

实验一:操作系统用户接口实验

班级:计科f1406 姓名:王家平学号:201416010619

1. 实验目的:

熟悉操作系统的命令接口、图形接口和程序接口

2. 实验内容:

1)使用linux常用命令:pwd、ls 、cd、mkdir、copy、date,显示这些命令的

结果,并解释这些命令的作用;

2)用C语言编制一个小程序,使其可通过Localtime( )系统调用来获得OS

提供的时间和日期。

3.实验代码:

#include

main(){

char *wday[]={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};

time_t timep;

struct tm *p;

time(&timep); /*取得当地时间*/

p=localtime(&timep); /*转换时间*/

printf ("%d%d%d ", (1900+p->tm_year),( 1+p->tm_mon),

p->tm_mday);

printf("%s%d:%d:%d\n", wday[p->tm_wday],p->tm_hour,

p->tm_min, p->tm_sec);

}

运行结果:

C语言做的DOS界面的串口通信程序 void setPort(int size, char check, int stop){ unsigned char b = 0x00; disable(); switch(size){ case 6:b |= 0x01; break; case 7:b |= 0x02;break; case 8:b |= 0x03; break; } switch(check){ case 'N': case 'n':b &= ~0x08;break; case 'J': case 'j':b |= 0x08; break; case 'O': case 'o':b |= 0x18;break; } switch(stop){ case 1: b &= ~0x04;break; case 2: b |= 0x04;break; } outportb(PORT[PORTNUM] + 3, b); /*register interrupt*/ outportb(PORT[PORTNUM] + 1, 0x01);/*接收中断*/ outportb(PORT[PORTNUM] + 4, 0x0b);/*零MODEM,恒有效状态*/ oldhandle = getvect(INTR[PORTNUM]);/*取得硬中断向量表的中断处理程序*/ setvect(INTR[PORTNUM],newhandle); /*开启IRQx*/ outportb(0x21, inportb(0x21) & INTRENTER[PORTNUM]); enable(); } /* baund:波特率 */ void initCom(int baund){ unsigned char b; disable(); outportb(PORT[PORTNUM] + 3, 0x80);/*设DLAB=1*/ outportb(PORT[PORTNUM] + 1, 0X00);/*高八位设0*/ switch(baund){ case 2400:b = 0x30;break; case 3600:b = 0x20;break; case 4800:b = 0x18;break; case 7200:b = 0x10;break; case 9600:b = 0x0c;break; } outportb(PORT[PORTNUM], b); enable(); } void closeCom(){ disable(); setvect(INTR[PORTNUM],oldhandle); enable(); } void setDefineOpion(){ } void readOpion(){ } int AcceptOrRefuse(){ int index=0; int key = 0; int ret; char str[2][7]={"accpet","refuse"}; while(key!=13) { gotoxy(12,5+index); textcolor(15); printf("%s",str[index]); index=1-index; gotoxy(12,5+index); textcolor(13); printf("%s",str[index]); key=bioskey(0); key=key&0xff; } if (index == 0){ ret = 0; strcpy(sendmsg, "_accept"); strcat(sendmsg, "\0"); sendMessage(); } else { ret = 1; strcpy(sendmsg, "_refuse"); strcat(sendmsg, "\0"); sendMessage();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值