前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >图解OS和Linux的基础知识

图解OS和Linux的基础知识

作者头像
小小科
发布2018-05-03 16:04:57
1.1K0
发布2018-05-03 16:04:57
举报
文章被收录于专栏:北京马哥教育北京马哥教育

“试着尽量用图示来表示个人对内容的理解,不足之处,还望不吝指教。”

一. CPU

1. cpu与指令集
  • CPU分为运算器和控制器
  • CPU指令
    • 特权指令
      • 拥有管理权限,(一般情况下,只有OS才有权限运行特权指令)
    • 普通指令
      • 拥有普通功能,一般应用程序运行
  • 不同的运算由不同的运算器完成运算(由指令集提供运算)
  • 程序员:一般面向操作系统编程

图示说明

2. 人与机器

感觉没什么好解释的,一切尽在图中

图示说明

二. OS

1. OS的目的与功能
  • OS:Operating System
  • System Call
    • 简称为:Syscall (系统调用)
  • OS的通用目的与功能

图示说明

2. 编程的层次
  • 硬件规格:hardware specifiacation
    • 不同厂商的硬件规格千差万别,API也各不相同,写起来极为不便;
  • 系统调用:数量很少,但是很精巧;
  • 库调用:library call
    • 把底层的功能整合出来,提供成离最终目标更近的功能;对所有的计算机功能来说,所有的功能都是通过调用实现;(通常都是c,c++库)

图示说明

3. 指令环
  • 由内到外依次是环0环1环2环3
  • 环0是特权指令,一般只有操作系统有权限运行;
  • 环1、环2出于历史原因,没有使用;
  • 环3是普通指令,一般应用程序使用;
    • 特殊情况:例如:mkdir /home/test
    • Note:没办法直接完成,需要向内核申请权限;

图示说明

4. 程序的运行模式
  • 用户空间:user space(us)
  • 内核空间:system space

图示说明

三. UI:User Interface

对OS来说:UI是用户接口、对用户来说UI是前端;

  • GUI:Graphic User Interface (图形用户接口)
  • CLI:Command Line Interface (命令行接口)

图示说明

四. ABI与API

  • ABI:Application Binary Interface(应用程序二进制接口)
    • 描述了应用程序(或者其他类型)和操作系统之间或其他应用程序的低级接口。
  • API:Application Programming Interface(应用程序编程接口)
    • 是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节

图示说明

五. 主流的CPU架构

图示说明

六. 流行的OS分支

图示说明

原文链接:https://segmentfault.com/a/1190000004936765

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-04-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 马哥Linux运维 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一. CPU
    • 1. cpu与指令集
      • 2. 人与机器
      • 二. OS
        • 1. OS的目的与功能
          • 2. 编程的层次
            • 3. 指令环
              • 4. 程序的运行模式
              • 三. UI:User Interface
              • 四. ABI与API
              • 五. 主流的CPU架构
              • 六. 流行的OS分支
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档