zoukankan      html  css  js  c++  java
  • Linux内核设计与实现(chapter1/2)

    Linux内核简介

    • Unix从一个失败的多用户操作系统Multics中衍生来的。

    • Unix强大的原因:

      • 简洁
      • 几乎所有的东西都被当做文件来对待,可以通过相同的系统调用接口来进行调用。
      • 因为它是由c语言编写,所以具有强大的移植能力
      • 进程创建迅速,且拥有独特的fork()系统调用
      • 具备清晰的层次化
    • Unix操作系统多样的功能:

      • 抢占式多任务
      • 多线程
      • 虚拟内存
      • 换页
      • 动态链接
      • TCP/IP网络
    • Linux是类Unix系统,但它不是Unix。

    • Linux内核是自由软件。

    操作系统和内核简介

    • 内核是操作系统的内在核心,有时候其被称为管理者或者是操作系统核心。
    • 应用程序通过系统调用与内核通信。
    • 内核可以通过中断号查找相应的中断服务程序,并调用这个程序响应和处理中断。
    • 每个处理器在任何指定时间点上的活动必然概括为下列三者之一:
      • 运行于用户空间,执行用户进程
      • 运行于内核空间,处于进程上下文,代表某个特定的进程执行。
      • 运行于内核空间,处于中断上下文,与任何进程无关,处理某个特定的中断。

    Linux内核和传统Unix内核的比较

    • Unix内核通常需要硬件系统提供页机制(MMU)以管理内存。

    • 操作系统内核的两大阵营:单内核和微内核

      • 单内核:内核从整体上作为一个单独的大过程来实现,同时也运行在一个单独的地址空间上运行。内核可以直接调用函数。大多数的Unix系统设计为单模块。

        • 简单
        • 性能高
      • 微内核:其的功能被划分为多个独立的过程,每个过程叫做一个服务器。所有的服务器都保持独立并运行在各自的地址空间上,通过消息传递处理内核通信——IPC机制(进程间通信机制),消息传递需要一定的周期。

    • Linux是一个单内核,即Linx内核运行在单独的内核地址空间上。

    • Linux内核与传统的Unix系统之间存在一些显著的差异:

      • Linux支持动态加载内核模块
      • Linux支持对称多处理机制(SMP机制)
      • Linux内核可以抢占
      • Linux对线程支持的实现比较有意思
      • Linux提供具有设备类的面向对象的设备模型、热插拔时间,以及用户控件的设备文件系统
      • Linux忽略了一些拙劣的Unix特性
      • Linux体现了自由。

    Linux内核版本

    • 主版本号.从版本号.修订版本号.稳定版本号

    从内核出发

    • 使用Git获取Linux版本中的一种版本

        git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
      
    • 更新版本

        git pull
      
    • 安装内核源代码

      • 若为bzip2的压缩形式:tar xvjf linux-x.y.z.tar.bz2
      • GNU的zip:tar xvzf linux-x..y.z.tar.gz
    • 使用补丁:patch -pl< ../patch-x.y.z

    • 内核的配置与安装通过Makefile与config所定。

    我有话说:

    如果让我一下子去学习内核里面的一堆代码内容,我只能呵呵呵呵呵,好在现在的我有时间,慢慢看吧,毕竟很多事情都可以一件一件一件一件一件一件地完成。

  • 相关阅读:
    linux centos下载地址
    什么是镜像文件?
    Linux下处理JSON的命令行工具:jq---安装
    CentOS7安装第三方yum源EPEL
    CentOS 6.5 下编译安装 Nginx 1.8.0
    CentOS 6.7 如何启用中文输入法
    Linux Yum 命令使用举例
    YUM 安装及清理
    Linux常用命令之rpm安装命令
    使用git代替FTP部署代码到服务器的例子
  • 原文地址:https://www.cnblogs.com/Spr1ngxx/p/5285593.html
Copyright © 2011-2022 走看看