1.Linxu系统构成:用户空间、内核空间
2.用户空间不能随便访问内核空间
3.系统调用:内核提供的安全访问机制; 硬件中断 、软件中断
作用:使用户空间可以访问内核空间并获取服务
4.划分空间的目的:保护内核空间不能被用户空间随意访问
5.用户空间如何访问内核空间?必须发生系统调用
6.如何发生系统调用?调用操作系统提供的函数接口–API
7.学习嵌入式Linux系统开发实际上学习的时用户编程接口API
8.为什么要分为用户内核?保护内核
9.文件操作、进程操作(多任务) 网络、设备
10.文件ID是动态分配 动态分配:只要当操作这个文件时,系统才会给你分配文件描述符
非负整数:从3编号开始,0、1、2有其他作用
11.creat函数 创建一个文件
creat(const char*pathname,mode_t node);
mode_t相当于c语言的typedef 重命名
typedef int mode_t;
Mode是权限,例如读写权限
perror打印错误的信息,会自动换行
perror(“creat filr error!”);
creat(文件名,权限)//函数名,形参,返回值
creat(“hello.txt”,
I
R
U
S
R
∣
_IRUSR|
IRUSR∣_IWUSR);
I
R
U
S
R
∣
_IRUSR|
IRUSR∣_IWUSR意思是可读可写
errno 系统的全局变量,保存系统调用的错误值
12.open函数 打开一个文件
(const char *pathname,int flags);//int open(const *pathname,int flags,mode_t mode )
pathname要打开的文件,
O_RDWR 文件不存在就去创建
(“hello2.txt”,O-RDWD|O_CREAT,0644)
0644是权限
13.write (fd,buffer,strlen(buffer));buffer的数据写到fd
14 read(fd,buffer,sizeof(buffer));
把fd的数据读出放在buffer,size是读多长的意思
15.lseel
在第二个参数
+10往后移10,
-10是往前面移10
16.close(int fd)
关闭文件
17.C语言程序设计:无os语法