当前位置: 首页 > >

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

发布时间:

通信软件设计方法 杨雄 编写 二零零九年四月 讲授内容 1)LINUX概况 2)LINUX下C语言程序编译和调试 2.1)LINUX开发环境学*(实验) 3)通信系统和通信软件 4)基于TCP-IP的主机到主机通信软件示例 4.1)SOCKET程序设计(实验) 5)无状态通信协议程序设计 6)LINUX内核程序设计 7)低层232接口通信程序设计 8)设计一个简单链路层以及程序 8.1)IP软件和链路层软件设计(实验) 成都信息工程学院 1 第二讲 LINUX下C语言程序编译和调试 上讲回顾 开机 -> 执行内存00000开始的程序 -> 阅读bios配置并初始化 -> 调光盘或硬盘0000道扇区的程序进入内存某个区域 -> 执行这个程序 -> 这个程序是操作系统的第一级引导程序 -> 这个程序把LINUX中的boot装入内存 -> 执行boot,装入LINUX内核 -> 启动0号进程 -> 0号根据系统配置表(类似注册表)进程生成后台进程 -> 为每个终端启动getty进程,等待用户登陆 -> getty为登陆用户启动shell进程 成都信息工程学院 2 LINUX内核结构 进程是动态调入内存的 P P P P P 用户进程 System Call Interface(POSIX.1),shell, GUI, Compiler, Library, etc. OS服务层 Modules Device Drivers Module Interface 也有部分内核程序是动态调入的 称为动态模块 和 而进 是Lin程 等ux的 待Ke区 进rne别 程l 是 来不 调能 用被 它调(和度静L去i态nu取x内内得核核C层一P样U ) 内核主要部分是静态的 Device Driver Interface CPU Disk Other Devices 硬件层 成都信息工程学院 3 第二讲 LINUX下C语言程序编译和调试 shell的作用 等待终端用户输入命令 -> 检查命令的语法合法性 -> 到文件系统中找这个命令(可执行文件) -> 调入这个命令(可执行文件) -> 执行这个可执行文件(程序) -> 执行完返回shell getty -> shell -> 命令字串 -> 这个命令界面 -> shell shell shell shell shell 内核 文件系统 命令 内存管理 CPU调度 硬盘管理 程序 成都信息工程学院 4 本章重点问题 LINUX下如何编译C语言程序 vi的使用 成都信息工程学院 5 第二讲 LINUX下C语言程序编译和调试 Hello! 李阳 LINUX操作系统 成都信息工程学院 6 第二讲 LINUX下C语言程序编译和调试 示例程序2 C语言代码(程序) int main (int argc, char *argv[]) { if (argc < 2) { printf(“ERROR\n”); exit(-1); } printf(“\nHello,%s!\n”,argv[1]); exit(1); } 成都信息工程学院 7 本讲实验操作一 1、开机进入登陆画面 2、用root用户或你的用户登陆 3、man vi 4、man vi > vi5、more vi- 成都信息工程学院 8 第二讲 LINUX下C语言程序编译和调试 ? LINUX操作界面 – Shell及常用命令 – vi – gcc – makefile 成都信息工程学院 9 Linux终端使用基础 什么是Shell? 成都信息工程学院 Shell Applications OperationSystem HardWare 10 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 shell,是GNU操作系统上默 认的shell。sh以及bash2都是对它的符号链接。 ? tcsh: Berkeley UNIX C shell。csh是对它的符号链接。 成都信息工程学院 11 shell的基本形式 shell 命令的基本格式是: #命令名 [选项] <参数1> <参数2> …… shell提示符 : # $ man 命令,检查某个命令或函数的使用方法 $man mkdir 成都信息工程学院 12 目录和文件的基本操作 文件查看和连接命令cat ? cat [选项] <file1> … 分屏显示命令more ? more [选项] <file>… 按页显示命令less ? less [选项] <filename> 成都信息工程学院 13 复制、删除和移动命令 复制命令cp ? cp [选项] <source> <dest> 或者 cp [选项] <source>... <directory> 删除命令rm ? rm [选项] <name>... 移动或重命名命令mv ? mv [选项] <source> <dest> 或者 mv [选项] <source>... <directory> 成都信息工程学院 14 创建和删除目录命令 创建目录命令mkdir ? mkdir [-p] <dirName>… 删除删除空目录命令rmdir ? rmdir [-p] <dirName> 成都信息工程学院 15 切换工作目录和显示目录命令 切换工作目录命令cd ? cd <dirName> 显示当前路径命令pwd ? pwd 查看目录命令ls ? ls [选项] [<name>...] 成都信息工程学院 16 查找与定位命



友情链接: