通信软件设计方法--LINUX下C语言程序

上传人:宝路 文档编号:48258070 上传时间:2018-07-12 格式:PPT 页数:54 大小:653.97KB
返回 下载 相关 举报
通信软件设计方法--LINUX下C语言程序_第1页
第1页 / 共54页
通信软件设计方法--LINUX下C语言程序_第2页
第2页 / 共54页
通信软件设计方法--LINUX下C语言程序_第3页
第3页 / 共54页
通信软件设计方法--LINUX下C语言程序_第4页
第4页 / 共54页
通信软件设计方法--LINUX下C语言程序_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《通信软件设计方法--LINUX下C语言程序》由会员分享,可在线阅读,更多相关《通信软件设计方法--LINUX下C语言程序(54页珍藏版)》请在金锄头文库上搜索。

1、通信软件设计方法杨雄 编写二零零九年四月成都信息工程学院讲授内容1)LINUX概况2)LINUX下C语言程序编译和调试2.1)LINUX开发环境学习(实验)3)通信系统和通信软件4)基于TCP-IP的主机到主机通信软件示例4.1)SOCKET程序设计(实验)5)无状态通信协议程序设计6)LINUX内核程序设计7)低层232接口通信程序设计8)设计一个简单链路层以及程序8.1)IP软件和链路层软件设计(实验)2成都信息工程学院第二讲 LINUX下C语言程序编译和调试上讲回顾开机 - 执行内存00000开始的程序- 阅读bios配置并初始化- 调光盘或硬盘0000道扇区的程序进入内存某个区域- 执

2、行这个程序- 这个程序是操作系统的第一级引导程序- 这个程序把LINUX中的boot装入内存- 执行boot,装入LINUX内核- 启动0号进程- 0号根据系统配置表(类似注册表)进程生成后台进程- 为每个终端启动getty进程,等待用户登陆- getty为登陆用户启动shell进程3成都信息工程学院LINUX内核结构进程是动态调入内存的内核主要部分是静态的也有部分内核程序是动态调入的 称为动态模块 和进程的区别是不能被调度去取得CPU 而是等待进程来调用它(和静态内核一样)4成都信息工程学院第二讲 LINUX下C语言程序编译和调试shell的作用等待终端用户输入命令- 检查命令的语法合法性-

3、 到文件系统中找这个命令(可执行文件)- 调入这个命令(可执行文件)- 执行这个可执行文件(程序)- 执行完返回shell内核getty - shell - 命令字串 - 这个命令界面 - shell内存管理CPU调度文件系统硬盘管理命令 程序shell shell shell shell5成都信息工程学院本章重点问题LINUX下如何编译C语言程序vi的使用6成都信息工程学院LINUX操作系统Hello! 李阳第二讲 LINUX下C语言程序编译和调试7成都信息工程学院C语言代码(程序)int main (int argc, char *argv) if (argc vi-5、more vi-9

4、成都信息工程学院LINUX操作界面Shell及常用命令vigccmakefile第二讲 LINUX下C语言程序编译和调试10成都信息工程学院Linux终端使用基础什么是Shell? ShellApplicationsOperationSystemHardWare11成都信息工程学院shell的基本形式 shell的种类 : 查看shell种类: /bin/sh /bin/bash /bin/bash2 /bin/ash /bin/bsh /bin/tcsh /bin/csh ash:贝尔实验室开发的shell,bsh是对ash的符号链接 。 bash:GNU的Bourne Again shel

5、l,是GNU操作系统上默 认的shell。sh以及bash2都是对它的符号链接。 tcsh:Berkeley UNIX C shell。csh是对它的符号链接。12成都信息工程学院shell的基本形式shell 命令的基本格式是: #命令名 选项 shell提示符 : # $man 命令,检查某个命令或函数的使用方法 $man mkdir13成都信息工程学院目录和文件的基本操作 文件查看和连接命令cat cat 选项 分屏显示命令more more 选项 按页显示命令less less 选项 14成都信息工程学院复制、删除和移动命令 复制命令cp cp 选项 或者 cp 选项 . 删除命令rm

6、 rm 选项 .移动或重命名命令mv mv 选项 或者 mv 选项 . 15成都信息工程学院创建和删除目录命令 创建目录命令mkdir mkdir -p 删除删除空目录命令rmdir rmdir -p 16成都信息工程学院切换工作目录和显示目录命令 切换工作目录命令cd cd 显示当前路径命令pwd pwd查看目录命令ls ls 选项 .17成都信息工程学院查找与定位命令 查找文件或者目录命令find find path expression文件定位命令locate/slocate locate 选项 18成都信息工程学院链接ln ln 选项 改变文件或目录时间的命令touch touch 选

7、项 file2 .链接命令19成都信息工程学院压缩解压缩命令命令格式为: tar 辅选项 查看文件内容:tar t(z)vf 文件名 压缩和解压命令gzip gzip 选项 解压命令unzip unzip 选项 普通文件tar(tar.gz)文件c(z)vfx(z)vf20成都信息工程学院常用命令显示文字命令echo echo -n 显示日历命令cal cal 选项 月 年日期时间命令date 显示日期和时间的命令格式为:date 选项 +FormatString 设置日期和时间的命令格式为:date 清除屏幕命令clear 21成都信息工程学院软件包管理命令rpm 安装软件 rpm -i (

8、 或者 -install) 安装选项 . 删除 rpm -e (或者-erase) 删除选项 pkg1 . pkgN 升级 rpm -U ( 或者-upgrade) 升级选项 file1.rpm . fileN.rpm 查询 rpm -q ( 或者 -query) 查询选项 pkg1 . pkgN校验已安装的软件包 rpm -V ( 或者 -verify) 校验选项 pkg1 . pkgN22成都信息工程学院联机帮助命令 man info help command23成都信息工程学院LINUX操作界面shellvigccmakefile第二讲 LINUX下C语言程序编译和调试24成都信息工程学

9、院本讲实验操作二1、cd ext-12、vi hello.c3、学习vi的使用1)命令模式使用的命令:dd 删除一行p 拷贝刚才删除的一行上下左右键 光标的移动Del键 删除一个符号ZZi 进入插入/输入和编辑模式(Esc退出): 进入末行命令模式25成都信息工程学院本讲实验操作二4、学习vi的使用2)插入模式使用的命令:字母,数字,符号,回车等上下左右键 光标的移动Esc键 返回命令模式3)末行命令模式使用的命令:w 写入文件,w! 强行写入文件q 退出编辑,q! 强行退出vi26成都信息工程学院三种工作方式命令模式Shell提示符末行模式退出vi启动vi:自动返回文本插入命令ESC插入模式

10、27成都信息工程学院进入与退出进入vi的命令: vi vi 文件名 :标识空行状态行28成都信息工程学院进入与退出 命令参数: n :进入vi后,光标停在文件的第n行; :.末行; /字符串 :.第一个指定字符串处; 退出vi命令: 命令状态: 两个大写的字母Z,即ZZ; 功能:存盘并退出; 末行模式: w :存盘不退出; w 文件名 :存在指定文件中,退出; w! 文件名 :覆盖保存在指定文件中,并退出。29成都信息工程学院进入与退出 末行模式 q :退出vi; q! ;退出不保存; wq :保存文件后,退出; x :同ZZ,退出vi,不保存; 进入插入模式的命令: i :在光标所在位置的前

11、面插入; I :.行的开头插入; a : .的位置的后面插入; A: .行的后面插入; o : .行的下面新建一行插入; O : .行上面新建一行插入;30成都信息工程学院光标的移动插入/命令模式下: 利用键盘上的方向键;命令模式下: i、h、w、b、0、$、.31成都信息工程学院文本编辑/删除命令dh :删除前一个字符w :.当前字b :.前一个字d :.当前行0 :.从前一个字符.行首.$ :.从当前字符开始到行尾的所有字符) : .当前字符.句尾( :.句首 : .段尾 : .段首M : .屏幕中间行H : .屏幕首行L : .屏幕底行x:删除当前字符; d命令32成都信息工程学院其它命

12、令查找命令 ?:向文件头方向查找合适的文本; n :.重复前一个查找命令; N :向文件尾方向.;33成都信息工程学院本讲实验操作三1、cd ext-12、vi hello.c3、gcc -o h hello.c4、./h5、vi makefile,编辑如下h:hello.cgcc -o h hello.c6、rm -r *.o h, 之后用ll7、make8、ll9、./h LiYang34成都信息工程学院LINUX操作界面shellvigccmakefile第二讲 LINUX下C语言程序编译和调试35成都信息工程学院GCC 命令行详解1、gcc包含的c/c+编译器 gcc,cc,c+,g+

13、,gcc和cc是一样的,c+和g+是一样的, 一般c程序就用gcc编译,c+程序就用g+编译 2、gcc的基本用法 gcc test.c这样将编译出一个名为a.out的程序 gcc test.c -o test这样将编译出一个名为test的程序,-o参 数用来指定生成程序的名字 3、为什么会出现undefined reference to xxxxx错误? 首先这是链接错误,不是编译错误有指定链接程序要用到得库,比如你的程序里用到了一些 数学函数,那么你就要在编译 数里指定程序要链接数学库,方法是在编译命令行里加入-lm。36成都信息工程学院GCC 命令行详解4、-l参数和-L参数 -l参数就是用来指定程序要链接的库,-l参数紧接着就是库 名,那么库名跟真正的库文件名有什么关系呢? 就拿数学库来说,他的库名是m,他的库文件名是 libm

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号