最新-1-Linux文件系统与进程-PPT精品课件_第1页
最新-1-Linux文件系统与进程-PPT精品课件_第2页
最新-1-Linux文件系统与进程-PPT精品课件_第3页
最新-1-Linux文件系统与进程-PPT精品课件_第4页
最新-1-Linux文件系统与进程-PPT精品课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Linux文件系统与进程Linux系统介绍Linux系统产品RedHat,Debian,Ubuntu,Novell/SuSERed Hat Enterprise Linux 3操作方法:图形人机交互方式命令行方式 Linux文件系统EXT2分区目录结构文件访问编程I/O操作 进程进程标识进程控制Linux系统介绍-Linux系统产品嵌入式Linux: uCLinuxAndroid系统Linux系统介绍-操作方法图形人机交互方式没有磁盘区采用目录管理命令行方式Linux文件系统与进程Linux系统介绍Linux系统产品RedHat,Debian,Ubuntu,Novell/SuSERed Hat

2、 Enterprise Linux 3操作方法:图形人机交互方式命令行方式 Linux文件系统EXT分区目录结构文件访问编程I/O操作 进程进程标识进程控制Linux文件系统ext分区Linux分区格式ext分区:ext2、ext3、ext4通过加载windows磁盘,可访问windows分区其它jfs, xfs等分区工具fdisk Windows分区格式FAT16、FAT32、NTFSLinux文件系统目录结构特殊目录根目录 用符号“/”表示当前目录用符号“.”表示上一级目录用符号“.”表示重要的目录 bin 存放二进制可执行文件(ls,cat,mkdir等) boot 存放用于系统引导时使

3、用的各种文件 dev 用于存放设备文件 etc 存放系统配置文件 home 存放所有用户文件的根目录 lib 存放跟文件系统中的程序运行所需要的共享库及内核模块 mnt 系统管理员安装临时文件系统的安装点 opt 额外安装的可选应用程序包所放置的位置 proc 虚拟文件系统,存放当前内存的映射 root 超级用户目录 sbin 存放二进制可执行文件,只有root才能访问 tmp 用于存放各种临时文件 usr 用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录 var 用于存放运行时需要改变数据的文件Linux文件系统文件访问命令 ls 目录 : 列出目录下的文件和

4、子目录 ls 列出当前目录下的文件和子目录 ls a 列出包括隐藏的文件在内 ls l 以列表形式列出 cd 目录 : 改变当前目录 cd . 返回上一级目录 cp 文件1 文件2 : 把文件1拷贝成文件2 cp r 目录1 目录2 : 把目录1下的内容拷贝到目录2下,包括子目录 find /目录 name filename : 在目录下寻找名字为filename的文件pwd命令 : 显示当前所在的路径和目录Linux文件系统文件访问命令(续) mkdir 目录名 : 创建一个目录 rmdir 目录 : 删除目录 mv 文件1, 文件2 : 把文件1命名为文件2 rm 文件 :删除文件 man

5、 命令 :查看命令的帮助文件vi命令 : 编辑文件chmod命令 : 修改权限用户管理命令useradd groupadd userdel groupdel su mount: 装载设备Linux文件系统文件I/O文件描述符一个非负整数进程通过文件描述符来访问文件打开或创建一个文件第一个参数pathname是要打开(或要创建)的文件名或含路径的文件名第二个参数flags是标志打开的方式,这个参数用来说明这个系统调用的多个选择项:O_RDONLY:表示请求以只读方式打开文件。O-WRONLY:表示请求以只写的方式打开文件。O_RDWR: 表示以可读写的方式打开文件。Linux文件系统文件I/O

6、(续)常用的几个选项:O_APPEND:文件以追加的方式打开。O_CREAT:如果这个文件不存在,就将建立该文件。O_NONBLOCK:非阻塞方式打开O_SYNC:文件以同步I/O的方式打开mode值访问权限创建文件时使用阻塞与非阻塞的概念Linux文件系统文件I/O (续)定义r :具有读取内容的权限;w:具有新增、修改文件内容的权限;x:具有执行文件的权限。举例-rwx-:0700, 文件所有者对文件具有读取、写入和执行的权限。(八进制)-rwxr-r-:0744, 文件所有者具有读、写与执行的权限,其他用户则具有读取的权限。rwxrwxrwx所有者权限所有者同组用户的权限其他用户权限00

7、/1Linux文件系统文件I/O (续)pathname和mode的含义跟open相同Linux文件系统文件I/O (续) 从文件描述符所指的文件中读取nbytes个字节到buff所指向的内存缓冲中。如果nbytes参数为0,该系统调用返回0并且没有其他结果。当read系统调用成功时,该调用的返回值是读取的字节数,返回0表示文件指针在文件尾部。成功读取一定字符数返回时,文件指针也向后移动一定的字符数。Linux文件系统文件I/O (续) write把buf所指内存中的nbyes个字节写入文件描述符所指的文件 调用返回情况调用成功时,write返回写入的字节数(为0表示没有数据要写)。当发生错误

8、时,返回-1,并将errno置为相应的错误代码。如果write调用的参数nbyes为0且文件描述指向一个正规文件,则调用将返回0且没有其他任何实际影响。Linux文件系统文件I/O (续) close调用成功时,返回值为0;否则,返回-1,表示调用出错。Linux文件系统文件I/O (续)举例创建一个名为hole的文件写入”abcdefghij”文件仅对所有者具有读取、写入和执行的权限Linux文件系统 文件I/O (续)char buf1=abcdefghij;void err_sys(const char* info)printf(“%s n”,info);exit(1);int main

9、(void)int fd;if (fd= creat (hole,0700)0)err_sys(create error);if ( write (fd,buf1,10)!=10)err_sys(buf1 write error);close(fd);return 0;Linux文件系统与进程Linux系统介绍实验采用:Red Hat Enterprise Linux 3操作方法:图形人机交互方式命令行方式 Linux文件系统EXT2分区目录结构文件访问编程I/O操作 进程进程标识进程控制进程基本概念程序与进程程序存放在磁盘文件中的可执行文件,是静态的。进程程序一旦装入内存,而且和它的运行环境

10、结合在一起,它就称为进程,是动态的。生命周期:装入内存到退出内存中止。分配了资源:CPU资源、内存资源、I/O资源等。Linux下的进程进程标识号进程标识号系统给每个进程定义了一个标识该进程的非负整数,称作进程标识符。每个程序执行起来后,有一个主进程。当某一进程终止后,其标识符可以重新用作另一进程的标识符。不过,一个标识符所代表的进程在任何时刻都是惟一的。系统把0和1保留给系统购两个重要进程。0进程是调度进程,它按原则把处理机分配给进程使用。进程1是初始化进程,它是程序/sbin的执行。进程1是系统所有其他进程的祖先,并且是进程结构的最终控制者。系统根据进程标识号来管理进程Linux下的进程进

11、程标识号 (续)Linux下的进程进程控制:创建父进程、子进程 /Linux独有的cow优化技术调用成功时对父进程返回子进程的PID,对子进程返回0。调用失败时,给父进程返回-1, 没有子进程创建。进程共享代码空间,但是数据空间是互相独立的,子进程数据空间中的内容是父进程的完整拷贝Linux下的进程进程控制:同步 调用wait的进程进入睡眠状态直到它的一个子进程退出时或收到一个不能被忽略的信号时被唤醒。如果调用发出时,已经有退出的子进程(这时子进程的状态是僵死状态),该调用立即返回。其中调用返回时参数status中包含子进程退出时的状态信息(正常退出还是被非正常结束的;正常结束时的返回值,或被

12、哪一个信号结束等信息)。waitid与wait函数在调用时的区别是waitid等待由参数pid指定的子进程退出。参数options的取值及其含义如下:WNOHANG:该选项要求如果没有子进程退出就立即返回。WUNTRACED:对已经停止但本不用报告状态的子进程,该调用也从等待中返回和报告状态。Linux下的进程进程控制:举例 (续) 除了使用exit函数来终止进程外,当进程运行完、程序到达main函数末时,进程会自动终止。当进程在main函数内执行return语句也会终止。_exit函数只是简单的退出调用函数,而不会关闭文件,清空缓冲区Linux下的进程进程控制:举例extern int er

13、rno;/extern表示全局变量,包括从其他库引用函数或变量时需加上int main(void)char buf100;pid_t cld_pid;/声明进程号int fd;int status;if(fd= open (temp,O_CREAT|O_RDWR)=-1)printf(open error %dn,errno);exit(1);Linux下的进程进程控制:举例 (续)strcpy(buf,this is parent process write n);/ char *strcpy(char* dest, const char *src);if ( (cld_pid= fork(

14、) )=0)/子进程,复制代码构成子进程strcpy(buf,this is child process write n);printf(this is child process n);printf(My PID(child) is %dn,getpid ();printf(My parent PID is %dn,getppid ();write(fd,buf,strlen(buf);close(fd);exit(0);else Linux下的进程进程控制:举例 (续)else printf(this is parent process n);printf(my PID(parent) id %dn, getpid ();printf(my child PID is %dn,cld_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论