华科操作系统实验报告
课程实验报告课程名称:操作系统原理
专业班级:
学号:
姓名:
指导教师:
报告日期:
计算机科学与技术学院
目录
目录 (2)
实验一:线程的同步 (3)
一、实验目的 (3)
二、实验内容 (3)
三、实验心得 (6)
实验二:誊抄实验的进程实现 (7)
一、实验目的 (7)
二、实验内容 (7)
三、实验心得 (10)
实验三:Linux文件目录操作 (12)
一、实验目的 (12)
二、实验内容 (12)
三、实验心得 (14)
实验一:线程的同步
一、实验目的
1、掌握Linux系统用户界面中键盘命令的使用。
2、学会一种Linux下的编程环境。
3、掌握Linux下进(线)程的概念。
4、了解Linux进程同步与通信的主要机制,并通过信号灯操作实现进程间的同步与互斥。
二、实验内容
1、程序要求
两个线程,共享公共变量a
线程1负责计算(+1)
线程2负责打印
2、运行环境
软件配置(含操作系统版本):ubuntu -
硬件:PC
3、源程序
源程序:
#include <>
#include <>
#include <>
#include
#include
#include
int semid;
int a=0;
typedef union senum
{
int val;
struct semid_ds *buf;
unsigned short *array;
struct seminfo *_buf;
}SEM_CTL_UN;
void P(int semid,int index)
{
struct sembuf sem;
= index;
=
-1;
")==0||strcmp(entry->d_name, ".")==0){continue;}");
strcat(s,entry->d_name);
lstat(s, &statbuf);/");
closedir(dp);
}
void main(void)
{
char dir[1000];
int depth=0;
scanf("%s",dir);
printdir(dir,depth);
return;
}
4、实验结果
实验结果截图如下:
图3-1 文件目录操作
三、实验心得
通过本次实验,我熟悉了Linux文件系统的使用,了解了Linux文件系统目录结构;实现了查询指定目录下的文件及子目录信息、显示文件的类型、大小、时间等信息、递归显示子目录中的文件信息等功能;学习了Linux文件属性接口和目录文件接口等方面的知识。
文件系统能为用户程序所需要,同时也为操作系统自身需要,它为用户和操作系统提供存储、检测、共享和保护文件的手段,通过本次实验我充分了解了文件系统的重要性,这对我今后的学习有很大的帮助。