高级操作系统2

高级操作系统2

ID:27635519

大小:356.00 KB

页数:40页

时间:2018-12-04

高级操作系统2_第1页
高级操作系统2_第2页
高级操作系统2_第3页
高级操作系统2_第4页
高级操作系统2_第5页
资源描述:

《高级操作系统2》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、高级操作系统AdvancedOperatingSystem北方工业大学计算机系NorthChinaUniversityofTechnologyDepartmentofComputer授课教师:宋丽华Email:slh2g@126.comTel:88803939五教1102第二章UNIX基础知识系统的启动过程UNIX文件结构简介C语言编程Makefile的编写UNIXshell编程2.1系统的启动过程操作系统的启动经历三个过程系统引导核心初始化系统的初始化1)系统引导把UNIX系统核心装入内存并且让它开始执行的工作叫做系统引导。上电。BIOS(

2、保存在主板上的闪存中)检查系统硬件。加载主引导程序,即(从硬盘0头,0道,0扇区)寻找/unix文件,并将该文件装入内存。内核装入程序将控制权交给新装入的内核从而使之得以运行。2)内核初始化(1)初始化少量的硬件接口、初始化系统时钟、初始化存储管理。还要初始化少量的数据结构。(2)初始化进程0注:进程0没有代码段,它就是一个进程数据结构。(3)进程0创建进程13)系统初始化(1)进程1执行系统调用exec,系统程序/sbin/init读取配置文件/etc/inittab,按照其中的配置对系统进行初始化。激活交换分区,检查磁盘,加载硬件模块,启

3、动对应运行级别的守护进程。(2)init为每一条通信线路创建一个getty进程来实现多用户方式。(3)等待用户注册,检查用户的登录口令建立shell进程。(4)当shell程序退出时,init程序就醒来,调用系统调用fork/exec产生一个新的getty程序来监督通信线路并等待下一个注册。第二章UNIX基础知识系统的启动过程UNIX文件结构简介C语言编程Makefile的编写UNIXshell编程UNIX文件结构简介层次结构:UNIX文件系统被组织成树型结构。在UNIX系统的常见的目录有:bin、etc、usr、unix、dev等。一个路径

4、名不一定非要从根目录开始,如果省略路径名则说明为当前目录。对文件数据一致对待:在UNIX系统中,程序并不知道文件存储的内部格式,程序把所有的文件内容都当作无格式的字节流看待。程序是按照自己的应用需要来解释文件的内容。文件系统的树状结构/目录:目录树的根,用于保存系统的内核文件和系统启动文件。/dev目录:用于保存系统的设备文件。/usr目录:用于保存系统正常运行时使用的系统应用程序,其中/usr/bin放置系统执行文件,/usr/src中放置系统的源代码。/etc目录:用于保存系统的配置文件,包括passwd,rc等非常重要的文件,也被放置到

5、根文件系统中。/bin目录:保存了用于系统维护目的的执行文件。/tmp目录:用于存放程序运行产生的临时文件,这个目录也是每个用户都可写的,在系统启动时将自动清空这个目录。/home目录:它用于维护用户的个人目录第二章UNIX基础知识系统的启动过程UNIX文件结构简介C语言编程Makefile的编写UNIXshell编程C语言编程1)源程序的编译如果要编译一个C语言源程序,我们要使用GCC编译器,为ANSIC编写的编译程序。假设我们有下面一个非常简单的源程序(hello.c):intmain(intargc,char**argv)  {prin

6、tf("HelloLinux!");  }http://hi.baidu.com/%C7%E5%D3%C6%CE%D2%D0%C4/blog/item/be537f8a09d82ac8fc1f10e9.htmlC语言编程GCC命令的基本用法如下:gcc[options][filenames]当不用任何选项编译一个程序时,GCC将建立(假定编译成功)一个名为a.out的可执行文件。例如:gcchello.c编译成功后,当前目录下就产生了一个a.out文件。C语言编程命令行选项指定的编译过程中的具体操作,GCC有超过100个的编译选项可用,这

7、些选项中的许多可能大家永远都不会用到,常用的有:-o选项表示创建可执行代码保存在‘文件’中,而不是默认文件a.out例如:gcc–ohellohello.c此时得到的可执行文件就不再是a.out,而是hello。C语言编程-c选项表示只要求编译器输出目标代码,而不输出可执行文件.例如:gcc–chello.cgcchello.o–ohello第一步将产生hello.o目标文件,当有多个源文件时,如果只有一个或几个源文件发生改变可以采用这种方式来编译,节省编译时间。gcc–chello.cdriver.cstack.cgcchello.odri

8、ver.ostack.o–ohello2)执行文件格式:./可执行文件名例:./a.out./helloC语言编程3)灾难性编译程序命令gcchello.c–ohe

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。