深入理解Linux内核 Chapter1知识点

本文为深入理解Linux内核一章总结的重要知识点
详细内容见:http://blog.csdn.net/feather_wch/article/details/50668247

1-Linux操作系统的特点?

八种

2-Linux操作系统相对于其他Unix-like操作系统的优势?

七种

3-什么是操作系统

通俗讲,操作系统就是一系列基础的程序的集合。

4-什么是kernel

在这些程序集中最重要的就是kernel(内核)

5-操作系统一定涉及的两个主要内容
  1. 与硬件设备打交道
  2. 为应用程序提供可执行的环境
6-Multiuser Systems(多用户操作系统)必须具备的特性
  1. 验证机制来确认用户信息
  2. 应对会阻塞其他应用程序运行的臭虫(buggy)用户程序的保护机制。
  3. 应对那些干扰或者破坏他人程序的恶毒用户进程的保护机制
  4. 计数机制用于限制每个用户使用的资源数目
7-什么是进程?进程和程序的区别?

进程:“an instance(实例) of a program in execution” or “execution context” of a running program. (程序处于执行时的实例 或者是 正在运行程序的执行上下文)

区别:several processes can execute the same program concurrently, while the same process can execute several programs sequentially.(多个进程可以同时执行同一个程序。同一个进程顺序执行数个程序)

8-Linux采用modules的优点?
  1. modularized approach
  2. Platform independence
  3. Frugal(花费少的) main memory usage
  4. No performance penalty
9-Linux hard link和symbolic link的区别?
10-Linux文件类型有哪些?

七种

11-什么是文件系统

文件系统就是硬盘区域的物理组织在用户层面的概念。当用户访问文件内容时,实际上是在访问存在硬件块设备上存储的数据。

12-Linux memory menagement中最主要的部分

virtual memory, Random access memory usage,Kernel Memory Allocator, Process virtual address space handling, Caching, Device Drivers

13-virtual memory是什么?

vm是硬件MMU和应用程序内存请求(memory request)之间的逻辑层。

14-vm的优点和目标有哪些?
  • Several processes can be executed concurrently.多个进程可以同时执行
  • It is possible to run applications whose memory needs are larger than the available physical memory.(可以执行需求的空间比当前可获得物理空间要大的应用程序)
  • Processes can execute a program whose code is only partially loaded in memory.(进城可以执行仅仅部分代码加载到内存中的程序)
  • Each process is allowed to access a subset of the available physical memory.(每个进程可以访问可获得的物理内存的子集)
  • Processes can share a single memory image of a library or program.(进程可以分享库或者程序的单一的内存镜像)
  • Programs can be relocatable that is, they can be placed anywhere in physical memory.(程序可以被重定位,可以被放到物理内存任何一个地方)
  • Programmers can write machine-independent code, because they do not need to be concerned about physical memory organization.(程序员可以编写机器独立的代码,因为他们不需要关心物理内存组织)
15-Random access memory usage?
  1. 一部分用于存储kernel image,剩下部分用于三方面
  2. To satisfy kernel requests for buffers, descriptors, and other dynamic kernel data structures
  3. To satisfy process requests for generic memory areas and for memory mapping of files
  4. To get better performance from disks and other buffered devices by means of caches
16-好的KMA需要有哪些特性?
  • It must be fast. Actually, this is the most crucial attribute, because it is invoked by all kernel subsystems (including the interrupt handlers).必须非常快,这是最重要的属性,因为所有的内核子系统都要调用他,包括中断处理函数。
  • It should minimize the amount of wasted memory.(需要最小化浪费的内存)
  • It should try to reduce the memory fragmentation problem.(需要减少内存碎片问题)
  • It should be able to cooperate with the other memory management subsystems to borrow and release page frames from them.(能和其他内存管理子系统协调工作来租借和释放page frames)
17-Process virtual address space handling: demand paging?

所有的Unix-like操作系统都采用了demand paging的memory allocation strategy策略。a page frame仅仅当进程访问其虚拟内存地址从而产生异常的时候,才分配给这个进程。

18-使用设备驱动(device drivers)的优点:
  • Device-specific code can be encapsulated in a specific module.(设备特定代码可以被封装到特定的模块中)
  • Vendors can add new devices without knowing the kernel source code; only the interface specifications must be known.(生产商可以不知道内核源代码就增加新的设备,仅仅需要知道接口规范)
  • The kernel deals with all devices in a uniform way and accesses them through the same interface.(内核用统一的方法处理所有的设备,并且通过一样的接口来调用他们)
  • It is possible to write a device driver as a module that can be dynamically loaded in the kernel without requiring the system to be rebooted. It is also possible to dynamically unload a module that is no longer needed, therefore minimizing the size of the kernel image stored in RAM.(能够编写设备驱动作为模块动态地加载到内核中而不需要系统重启。也能动态卸载。这样能过最小化kernel image的尺寸)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猎羽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值