1 / 16

UNIX 的应用与开发

UNIX 的应用与开发. 西安电子科技大学操作系统组. 课程安排 第一次课 Unix 基础知识 Unix 基本操作 Unix 编辑器的使用 Unix shell 编程(上) 第二次课 Unix shell 编程(下) Unix 中的 C 程序设计 讲解部分课后习题 教学目标 熟悉 Unix 的基本操作 能够进行简单的 Shell 编程 掌握 Unix 下的 C 程序设计方法. 课程安排 第一次课 Unix 基础知识 Unix 基本操作 Unix 编辑器的使用 Unix shell 编程(上) 第二次课 Unix shell 编程(下)

Télécharger la présentation

UNIX 的应用与开发

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UNIX的应用与开发 西安电子科技大学操作系统组

  2. 课程安排 • 第一次课 • Unix基础知识 • Unix基本操作 • Unix编辑器的使用 • Unix shell编程(上) • 第二次课 • Unix shell编程(下) • Unix中的C程序设计 • 讲解部分课后习题 • 教学目标 • 熟悉Unix的基本操作 • 能够进行简单的Shell编程 • 掌握Unix下的C程序设计方法

  3. 课程安排 • 第一次课 • Unix基础知识 • Unix基本操作 • Unix编辑器的使用 • Unix shell编程(上) • 第二次课 • Unix shell编程(下) • Unix中的基本编程——C程序设计 • 讲解部分课后习题 • 教学目标 • 熟悉Unix的基本操作 • 能够进行简单的Shell编程 • 掌握Unix下的C程序设计方法

  4. 一、UNIX基础知识 • Unix的发展历程 诞生:1969年,Bell实验室,Ken Thompson 1973,Thompsom用C语言重新编写了Unix——UNIX V Linus Torvalds 1987, Minix, Andrew S. Tanenbaum 1975,Unix V6版 1991, Linux, Linus Torvalds 1979,BSD Unix SCO,SCO Xenix V others … Red hat Red flag 1988, 开放软件基金会, OSF/1 ISO和IECC, 成立了一个技术委员会·,POSIX.1

  5. 一、UNIX基本知识 • Unix系统的特点 核心代码95%使用C语言编写,内核极小,容易编写、修改,可移植性好; 多用户、多任务、分时操作系统 UNIX 可靠性强,30多年历史的证明; 外围系统实例丰富 文件系统采用树型分层结构,灵活,安全,检索快捷 文件和设备的统一处理,简化了系统设计,便于用户使用;

  6. 课程安排 • 第一次课 • Unix基础知识 • Unix基本操作 • Unix编辑器的使用 • Unix shell编程(上) • 第二次课 • Unix shell编程(下) • Unix中的基本编程——C程序设计 • 讲解部分课后习题 • 教学目标 • 熟悉Unix的基本操作 • 能够进行简单的Shell编程 • 掌握Unix下的C程序设计方法

  7. 二、UNIX的基本操作 • 回顾 • 常用的基本命令 • ls:列目录内容 • mkdir:创建子目录 • cd:改变工作目录;快速回到默认目录 • pwd:显示用户当前工作目录(绝对路径) • rmdir::删除一个空的子目录 • cat::链接并显示文件 • cp:复制文件 • rm:删除文件或目录 • ln:建立文件链接 • more/page :分页显示命令 • man:帮助命令

  8. 二、UNIX的基本操作 • 补充几个命令 • exit,logout,Ctrl+D:推出登录,相当于注销 • shutdown, halt:关机 • useradd:添加用户 • passwd:用户密码 • mount:安装文件系统 mount –t vfat /dev/hda2 /mut/huang unmoun /dev/hda2 unmount /mut/huang

  9. 二、UNIX的基本操作 • chmod • 功能:改变文件存取方式 • 格式: • 八进制表示:chmod 777 filename • 符号表示 u: 文件主 g:同组用户 o:其它用户 a:所有用户 +:添加许可 -:取消许可 =:设置许可 r:读许可 w: 写许可 x:执行许可 例如:chmod ug+w filename chmod a+rx filename

  10. 三、Unix编辑器的使用 • vi(visual editor)编辑器的使用 • 是一种全屏编辑器,是Unix中使用最广的编辑器之一 • 特点: • 有三种工作方式: • 命令行方式:可以输入各种vi命令,完成对文本的编辑、调整工作,如移动光标,删除字符、单词、整行操作等,常用命令在课本P369页,从键盘上输入的任何字符都被作为编辑命令来解释。 • 插入编辑方式:在此状态下可以编辑文本,从键盘上输入的所有字符都被插入到正在编辑的缓冲区中,被当作正文。 • 末行(底行)命令方式:实现操作命令,完成对文本的控制和管理,与命令行方式下的命令行程互补,主要用于对文件全文或者文件本身进行操作,如读写文件,查找/替换字符串,设置编辑器参数等,常见命令见P371

  11. 三、Unix编辑器的使用 • 使用Vi编辑器的基本步骤 • 进入vi vi vi filename • 到输入模式 按 a 或者 i键进入编辑模式 • 输入文本 将文本键入缓冲区 • 到命令行模式 按<Esc> • 进入底行命令模式 按 : / ? • 保存缓冲区到文件 键入:w file 或者 w • 退出vi 键入:q

  12. 三、Unix编辑器的使用 • 使用注意事项 • 命令行模式是其它模式进行切换的枢纽: • 在vi中可以直接执行Shell命令:在底行命令状态键入sh或!sh即可 编辑模式 命令行模式 底行命令模式 ESC ESC a,i : / ?

  13. 五、Unix中的C程序设计 • 编译环境 • GCC • GNU C Compiler, 是Unix/Linux下最好用的编译器之一,非常稳定,执行效率要比其它的编译器高20%-30%,大部分的自由软件都是由它编译的。 • Gcc能自动将C或者C++文件编译成目标文件,然后连接成为可执行文件,如果没有给出可执行文件的名称,则gcc会自动生成一个名为a.out的文件。 • Gcc是通过文件后缀来区分文件类别的,遵循如下约定: • .c文件:C语言源代码 • .a文件:是由目标文件构成的库文件 • .h文件,程序头文件 • .i文件,经过预处理的C源代码文件 • .o文件,编译后的目标文件 • .s文件,汇编语言源代码 • .C, .cc, .cxx文件,C++源代码

  14. 五、Unix中的C程序设计 • Gcc的执行过程 • 不仅仅是编译,由四个步骤构成 调用CPP进行预处理 调用cc1进行编译 .o文件 调用as进行汇编 调用ld进行连接

  15. 五、Unix中的C程序设计 • Gcc的基本用法 • 使用时需要给出必要的调用参数和文件名称,Gcc的参数由100多个,我们介绍最基本的,最常用的给大家。 • 格式: gcc [options] [filename] options: -c, 只进行编译,不连接 -o output filename, 确定输出的可执行文件名称 output filename, 这个名称不能和源文件同 名,如果没有输出a.out -O, 对程序进行优化处理,产生的可知行文件执 行效率较高,但是编译,连接过程会较慢 -g, 产生符号调试工具(gdb)必须的符号信息

  16. 例如: • gcc test.c a.out • Gcc –o test.out test.c test.out • Gcc –c test.c test.o • Make——大中型项目的编译工具 • gdb——c, c++的调试工具

More Related