操作系统课程设计实验报告

发布 2022-10-05 13:43:28 阅读 3298

编写螺旋矩阵c语言程序,makefile程序,使用makefile编译链接螺旋矩阵c语言程序,生成可执行程序,执行该可执行程序。要求输入两个数字a,b代表螺旋矩阵的长和宽,输出为一个长为a,宽为b的螺旋矩阵。

内核为linux2.6 的centos操作系统。

#include <>

#define m 100

void rataterarray(int array[m][m],int rows,int cols)

int seednum=1;//seednum初值。

int i=0;

int row=0;

int col=0;

int regcount=rows%2==0?rows/2:(rows+1)/2;//regcount为矩形个数。

for(i=0;i

seednum=(rows-2*i+cols-2*i)*2-4+seednum;//矩形的尾值作为内含矩形的seednum 初始值。

int main()

int array[m][m];

char carry[m][m];

//分别为数组的行和列。

int rows,cols;

int i=0;

int j=0;

printf("请输入螺旋数组的行数和列数:")

scanf("%d %d",&rows,&cols);

//初始化数组为-1

for(i=0;i

//螺旋数组赋值函数。

rataterarray(array,rows,cols);

printf("打印螺旋数值如下:");

for(i=0;i

printf("");

return 0;

利用shell批量建立用户,同样利用shell删除之前建立的用户。

内核为linux2.6 的centos操作系统。

/创建用户。

#!/bin/sh

i=1groupadd class1

while [ i -le 30 ]

do if [ i -le 9 ]

then username=stu0$

elseusername=stu$

fiuseradd $username

chown -r $username/home/$username

chgrp -r class1 /home/$username

i=$(i+1))

done/删除用户。

#!/bin/sh

i=1groupadd class1

while [ i -le 30 ]

doif [ i -le 9 ]

thenusername=stu0$

elseusername=stu$

fiuserdel -r $username

chown -r $username/home/$username

chgrp -r class1 /home/$username

i=$(i+1))

done使用驱动程序实现实验一当中的螺旋矩阵的打印。需要三个文件。makefile文件用来编译驱动程序;测试程序测试驱动程序;字符驱动程序。

内核为linux2.6 的centos操作系统。

#makefile

ifneq ($kernelrelease),

obj-m :=

elsekerneldir ?=lib/modules/$(shell uname -r)/build

pwd :=shell pwd)

all:$(make) -c $(kerneldir) m=$(pwd) modules

clean:

$(make) -c $(kerneldir) m=$(pwd) clean

endif#include<>

#include<>

#include<>

#include<>

#include

void showbuf(char *buf,int row,int col);

int max_len=100; /10*10max

int main()

int fd;

int i;

int rows,cols;

char buf[255];

fd=open("/dev/devtest",o_rdwr,s_irusr|s_iwusr);

if(fd<0)

printf("######demodriver drivers open failed!!######");

return(-1);

elseprintf("######demodriver drivers open success!!######");

printf("write %d bytes data to /dev/devtest",max_len);

/showbuf(buf);

scanf("%d %d",&rows,&cols);

buf[0]=(char)(rows);

buf[1]=(char)(cols);

write(fd,buf,2);

printf("read %d bytes data from /dev/devtest",max_len);

read(fd,buf,rows*cols);

showbuf(buf,rows,cols);

ioctl(fd,1,null);

close(fd);

return 0;

void showbuf(char *buf,int rows,int cols)

int i,j=0;

char tmp;

for(i=0;i

printf("");

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#define globalmen_size 0x1000

#define men_clear 0x1

#define globalmen_major 50

#define m 100

module_license("gpl");

module_author("helight");

static int devtest_major=globalmen_major;

/static int devtest_minor=0;

static int max_buf_len=1024;

static char drv_buf[1024];

static int wri_length=0;

struct globaldev{

struct cdev cdev;

unsigned char mem[globalmen_size];

static struct globaldev *mydev;

static int devtest_open(struct inode *inode,struct file *filp);

static int devtest_release(struct inode *inode,struct file *filp);

操作系统课程设计实验报告

实验报告册。班级。学号。姓名。教师。实验说明。1 实验做为学习的重要促进手段,是为了深化对理论的理解,锻炼实践动手能力。2 实验同时也作为考核的手段。3 实验内容会在课程进行中下达,并且会分次地 部分地被抽查。4 课程结束时,要求把所有的实验整理成一个完整的电子文档并上交,做为最后成绩的评定依据。5...

操作系统课程设计实验报告

河北大学工商学院。课程设计。题目 操作系统课程设计 学部信息学部。学科门类电气信息。专业计算机。学号 2011482370 姓名耿雪涛。指导教师朱亮。2013 年 6月19日。主要内容。1 设计目的。通过模拟操作系统的实现,加深对操作系统工作原理理解,进一步了解操作系统的实现方法,并可练习合作完成系...

操作系统课程设计报告

西安郵電大學。院系名称 计算机学院。专业名称 软件工程。班级 1104 学生姓名 赵大伟。学号 8位 04113124 指导教师 舒新峰。设计起止时间 2013.11.10 2013.11.20 1 通过观察 分析实验现象,深入理解进程及进程在调度执行和内存空间等方面的特点,掌握在posix 规范中...