Unix系统编程概述
1.系统编程的程序模型 用户输入数据,计算机中的程序(可运行的一段代码)对数据进行相应的处理,再在显示器上输出结果。 许多键盘或显示器受到一种机制的管理连接到不同的程序。 2操作系统的职责 计算机用操作系统管理所有资源,将不同设备和程序连接起来。操作系统其实是一个特殊 的程序。 操作系统又称为内核。 3系统资源 处理器:程序有指令构成,处理器是执行指令的硬件设备。 输入输出(I/O):程序中的、终端的、硬盘输入输出数据,都流经内核。 进程管理:内核中与进程相关的服务有新建一个进程、终止进程、进程调度。 内存:内存空间是用来存放程序和数据。所有程序必须在内存中运行。系统空间是用来容纳操作系统的内存空间,容纳应用程序的内存空间是用户空间。 设备:磁带机,光驱、鼠标、扫描仪和数码摄像机 计时器:程序工作与时间有关。比如定时触发 进程间通信:计算机中不同的进程也要相互通信。 网络:网络使得不同主机上的进程互相通信 4使用Unix 下列均是Ubuntu系统下的操作 (1)运行显示时间和日期的程序如下 在Ubuntu系统中,运行如下图,Ubuntu中没有自带fortune这个程序,我们按enter键后会提示我们如何输入指令进行安装,然后只要输入密码即可进行安装。 5目录操作 ? (1)查看目录结构 ? 因为我们用户的主目录一般在/home目录中,所以输入tree只能显示/home下的目录树 输入tree -L 1 /???? 是查看/下的第一层目录 输入tree -Ld 1 /?????? 只显示目录 (2)ls? 列出目录内容 如:输入ls /etc??? 会列出/etc目录里面所包含的文件和子目录 输入ls /会列出根目录的内容 (3)cd? 改变当前目录 当前目录为自己的主目录,可以通过cd命令转到其他目录 ? 如 cd /bin我们可以看到$ 前面已经有变化了 输入 cd .. 我们可以将目录转为上一层目录,即为根目录,可见$前面有变化 无论当前目录是什么,我们都可以通过cd 这一命令回到用户的主目录,见上图 ? (4)mkdir和rmdir 先用cd 回到主目录 输入mkdir jokes 这里mkdir是新建目录,jokes 是目录名 输入rmdir jokes 这里rmdir 是删除目录的命令,但是删除目录时,目录中的文件和子目录要先被删除或移走 6文件操作 ? (2)cat,more,less,pg---查看文件的内容 区别: cat可以一下子列出文件的所有内容 当文件的内容比较多,在一屏内显示不完时,more会更加合适: 显示一屏后会暂停输出,这时用户按空格键,more会继续输出下一屏。 按enter键会显示下一行,输入“q”则退出 (3)cp??? 文件复制 如$ cp language hello world 将文件language复制一份,新的文件名为hello world ? ? ? ? rm ? ? 文件删除 如$ rm language hello world 一次删掉两个文件language和hello world (4)通过ls -l 命令可以看到文件的所有者和许可权限 三个权限r:read? w:write? x:execute 7 Unix的计算器 输入bc 启动计算器 ? 可以进行上述运算,该计算器可以处理很大的整数 ? ?8动手实践 more的三种用法 $ more filename? $ command | more?? $ more < filename 第一种情况,more显示文件filename的内容;第二种情况,more将command命令的输出分页显示;第三种情况,more从标准输入获取要分页显示的内容,这时more的标准输入被重定向到文件filename。 可见这个程序中在显示24行后会出现白底的more? 后面仍然显示代码 ? 在列出/bin目录下的文件时,仍是这种情况 改进more02 ? 按enter键后 Unix系统的主要结构:内存被分为系统空间和用户空间,内核和它的数据结构位于系统空间,用户程序位于用户空间,用户通过终端连接到系统,文件存放在磁盘上各种各样的设备都会被内核直接管理,用户程序可以通过内核来访问设备,最后还有网络连接,用户可以通过网络接入系统。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |