UNIX整理

《UNIX程序设计》期末考试复习提纲

题型:

单选题 15分    填空题 15分    判断题 10分    简答题 36分    编程题 24分

复习要点:

(1)什么是操作系统?什么是UNIX操作系统?什么是Linux操作系统?它们之间的关系是怎样的?

 

操作系统:控制计算机硬件和软件资源,对作业进行合理的调度,以供用户方便使用的一组软件的集合。

UNIX操作系统,是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统

 Linux,即GNU/Linux,是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIXUNIX的多用户、多任务、支持多线程和多CPU的操作系统。

Linux继承了Unix网络为核心的设计思想,它能运行主要的UNIX工具软件、应用程序和网络协议。

(2)程序运行时,堆栈如何变化?什么是数据帧或活动记录?bp和sp指针在函数运行过程中是如何变化的?

新的栈中变量会在低地址的位置,新的堆中的变量会在高地址的位置

栈是向低地址延伸的,堆是向高地址延伸的

过程活动记录/栈帧,每个(用户)栈帧包括如下内容:

函数实参和局部变量:由于这些变量都是在调用函数时自动创建的,因此在C语言中称其为自动变量。函数返回时将自动销毁这些变量(因为栈帧会被释放),这也是自动变量和静态(以及全局)变量主要的语义区别:后者与函数执行无关,且长期存在。

函数调用的链接信息:每个函数都会用到一些CPU寄存器,比如程序计数器,其指向下一条将要执行的机器语言指令。每当一函数调用另一函数时,会在被调用函数的栈帧中保存这些寄存器的副本,以便函数返回时能为函数调用者将寄存器恢复原状。

SP:基址寄存器(stack pointer),一般在函数中用来保存进入函数时的sp的栈顶基址,出栈入栈操作时,
      BP:  基数指针寄存器BP(base pointer)是一个寄存器,它的用途有点特殊,是和堆栈指针SP联合使用的,作为SP校准使用的,只有在寻找堆栈里的数据和使用个别的寻址方式时候才能用到,保持不变

(3)UNIX环境下编程共同遵循的规范有哪些?“Least Surprise”是什么意思?

KISS,keep it simple and stupid. 

 

常见的标准共有三个:ISO C、POSIX、SUS。

ISO C:是C语言标准,是开发语言标准,与任何系统均无关。

POSIX:全写是Portable Operating System Interface。是操作系统的接口标准,在后期有包括ISO C这个C语言标准。

SUS:全写是Single Unix Specification。是POSIX.1的超集,定义了一些附加接口,扩展了POSIX.1这个标准。

POSIX.1中包含X/Open系统接口,是可选项。

X/Open系统接口可选项(X/Open System Interface),属于POSIX.1标准的一部分。描述了可选的接口,以及规定了遵循XSI(XSI Confirming)的实现,必须支持的POSIX.1的哪些可选部分。

只有遵循了XSI的实现才可以成为Unix。

Unix商标为Open Group所拥有。

Least Surprise是减少不必要的创新,减少用户学习成本

(4)常用的Shell命令,如ls、cd、dd、pwd、ps、cp、chown、chmod、mkdir、size等的具体用法。

      ls(list)类似于dos下的dir命令,列出所有文件

      ls –a   Linux上的文件以.开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除了显示一般文件名外,连隐藏文件也会显示出来。

      ls –l   该参数显示更详细的文件信息。

      ls –F   使用这个参数表示在文件的后面多添加表示文件类型的符号,例如*表示可执行,/表示目录,@表示连结文件,这都是因为使用了-F这个参数。但是现在基本上所有的Linux发行版本的ls都已经内建了-F参数,也就是说,不用输入这个参数,我们也能看到各种分辨符号。

       cd(change directory) 用于切换用户当前工作目录

       cd aaa 进入aaa目录

       cd 命令后不指定目录,会切换到当前用户的home 目录

       cd ~ 作用同cd后不指定目录,切换到当前用户的home 目录

       cd - 命令后跟一个减号,则会退回到切换前的目录

       cd .. 返回到当前目录下的上一级目录

       dd(disk dump)指定大小拷贝文件

pwd(print working directory)用于显示用户当前工作目录

       ps(processes status)显示终端下的所有进程

       cp(copy)复制命令

       复制一个文件到另一目录:cp 1.txt ../test2

       复制一个文件到本目录并改名:cp 1.txt 2.txt

       复制一个文件夹a并改名为b:cp -r a b

       chown (change owner) 改变文件的所有者

       chmod(change mode)改变文件的权限模式

       mkdir(make diretory)创建目录

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值