基于Unix/Linux的C系统编程 第一章思考题

1、什么是系统编程?什么是系统调用?

        系统级编程立足于操作系统层,其编制的程序更接近操作系统内核,更关注于程序的运行效率和具体的实现细节,所以此种编程模式需要了解系统的运行机制和底层程序的编写,主要应用于底层软件的开发和高端计算。

        系统调用指一种进入系统空间的方法。

2、请解释微内核和宏内核在系统调用上的区别?

        宏内核的优势在于其逻辑简单、直截了当,实现起来更容易。整个内核是一个不可分割的静态可执行体,并且必须以完整。单独的可执行块的形式在系统空间内运行。

        由于内核模块间的调用形式只有一种,即函数调用,除了函数调用所产生的开销外,没有额外开销。

        微内核的优势在于其结构严谨和精致,而且程序更容易模块化,进而更容易一致。但是内核与各个服务进程之间必须通过消息机制进行交互,内核发出请求,服务进程做出应答,这使该结构下的操作系统通信开销过大,进而导致系统的整体执行效率大打折扣。

3、内核所提供的服务包括哪些?

        输入输出、进程管理、计时器、进程间通信、网络

4、什么是系统空间和用户空间?

        系统空间是为内核保留的空间。除系统空间之外的为用户空间,用户空间是为用户进程保留的虚拟地址空间。

5、引用库的目的是什么?

        库的建立就是为了软件复用。

6、对系统编程的评价标准有哪些?

        时间与速度  健壮性 移植性  安全和可靠性

        第一章学习总结

        计算机软件编程主要分为两大类:应用级编程和系统级编程,本书重点在系统级编程,更接近于操作系统核心,需要了解和学习操作系统的运行机制和具体实现细节,需要记住的有系统资源,系统服务,系统调用。Unix中系统调用以函数的形式存在,是一种接口。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值