Loading... <p><title><span style="font-family: 微软雅黑,Microsoft YaHei; font-size: 14px;">一.CPU</span></title> <p></p> <p class="note-tags "><code><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">Linux</span></code> <code><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">OS</span></code> <code><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">基础知识</span></code></p> <blockquote><p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">试着尽量用图示来表示个人对内容的理解,不足之处,还望不吝指教。</span></p> </blockquote> <p></p> <ul class=" list-paddingleft-2"> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">一.CPU</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">二.OS</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">三.UI:User Interface</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">四.ABI与API</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">五.主流的CPU架构</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">六.流行的OS分支</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">1.cpu与指令集</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">1.OS的目的与功能</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">2.编程的层次</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">3.指令环</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">4.程序的运行模式</span></p> <p></p> </li> </ul> </ul> <h3 id="一cpu"><span style="font-size: 18px"><strong><span style="font-family: 微软雅黑,Microsoft YaHei">一.CPU</span></strong></span></h3> <h4 id="1cpu与指令集"><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 16px">1.cpu与指令集</span></h4> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>CPU</strong>分为运算器和控制器</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>CPU指令</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">拥有普通功能,一般应用程序运行</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">拥有管理权限,(一般情况下,只有OS才有权限运行特权指令)</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">特权指令 <br /></span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">普通指令 <br /></span></p> </li> </ul> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">不同的运算由不同的运算器完成运算(由指令集提供运算)</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>程序员</strong>:一般面向操作系统编程</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明:</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="01.png" src="//cto.wang/usr/uploads/2016/07/20160703161429-3.png" title="1460809388521639.png" /></strong></span></p> </li> </ul> </ul> <p></p> <h4><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 16px"><strong>2.人与机器</strong></span></h4> <blockquote><p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">感觉没什么好解释的,一切尽在图中</span></p> </blockquote> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="02.png" src="//cto.wang/usr/uploads/2016/07/20160703161429-68.png" title="1460809464203542.png" /></strong></span></p> </li> </ul> </ul> <p></p> <h3 id="二os"><span style="font-size: 18px"><strong><span style="font-family: 微软雅黑,Microsoft YaHei">二.OS</span></strong></span></h3> <h4 id="1os的目的与功能"><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 16px">1.OS的目的与功能</span></h4> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>OS</strong>:Operating System</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>System Call</strong> <br /></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">简称为:Syscall (系统调用)</span></p> </li> </ul> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>OS</strong>的通用目的与功能:</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明:</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="3.png" src="//cto.wang/usr/uploads/2016/07/20160703161429-65.png" title="1460809508736884.png" /></strong></span></p> </li> </ul> </ul> <p></p> <h4 id="2编程的层次"><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 16px">2.编程的层次</span></h4> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>硬件规格</strong>:hardware specifiacation <br /></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">不同厂商的硬件规格千差万别,API也各不相同,写起来极为不便;</span></p> </li> </ul> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>系统调用</strong>:数量很少,但是很精巧;</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>库调用</strong>:library call</span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">把底层的功能整合出来,提供成离最终目标更近的功能;对所有的计算机功能来说,所有的功能都是通过调用实现;(通常都是c,c++库)</span></p> </li> </ul> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明:</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="4.png" src="//cto.wang/usr/uploads/2016/07/20160703161429-85.png" title="1460809524669728.png" /></strong></span></p> </li> </ul> </ul> <p></p> <h4 id="3指令环"><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 16px">3.指令环</span></h4> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">由内到外依次是<strong>环0、环1、环2、环3</strong>;</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>环0</strong>是特权指令,一般只有操作系统有权限运行;</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>环1、环2</strong>出于历史原因,没有使用;</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>环3</strong>是普通指令,一般应用程序使用;</span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>特殊情况</strong>:例如:</span><code><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">mkdir /home/test</span></code></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>Note</strong>:没办法直接完成,需要向内核申请权限;</span></p> </li> </ul> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明:</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="5.png" src="//cto.wang/usr/uploads/2016/07/20160703161429-32.png" title="1460809541648161.png" /></strong></span></p> </li> </ul> </ul> <p></p> <h4 id="4程序的运行模式"><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 16px">4.程序的运行模式</span></h4> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>用户空间</strong>:user space(us)</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>内核空间</strong>:system space</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明:</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="7 (2).png" src="//cto.wang/usr/uploads/2016/07/20160703161429-12.png" title="1460809558480079.png" /></strong></span></p> </li> </ul> </ul> <p></p> <h3 id="三uiuser-interface"><span style="font-size: 18px"><strong><span style="font-family: 微软雅黑,Microsoft YaHei">三.UI:User Interface</span></strong></span></h3> <blockquote><p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">对OS来说:UI是用户接口、对用户来说UI是前端;</span></p> </blockquote> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>GUI</strong>:Graphic User Interface (图形用户接口)</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>CLI</strong>:Command Line Interface (命令行接口)</span></p> </li> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明:</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="6.png" src="//cto.wang/usr/uploads/2016/07/20160703161429-51.png" title="1460809619341938.png" /></strong></span></p> </li> </ul> </ul> <p></p> <h3 id="四abi与api"><span style="font-size: 18px"><strong><span style="font-family: 微软雅黑,Microsoft YaHei">四.ABI与API</span></strong></span></h3> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>ABI</strong>:Application Binary Interface(应用程序二进制接口)</span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">描述了应用程序(或者其他类型)和操作系统之间或其他应用程序的低级接口。</span></p> </li> </ul> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>API</strong>: Application Programming Interface(应用程序编程接口)</span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px">是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节</span></p> </li> </ul> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明:</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="7.png" src="//cto.wang/usr/uploads/2016/07/20160703161429-10.png" title="1460809637151557.png" /></strong></span></p> </li> </ul> </ul> <p></p> <h3 id="五主流的cpu架构"><span style="font-size: 18px"><strong><span style="font-family: 微软雅黑,Microsoft YaHei">五.主流的CPU架构</span></strong></span></h3> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明:</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="8.png" src="//cto.wang/usr/uploads/2016/07/20160703161430-4.png" title="1460809657743450.png" /></strong></span></p> </li> </ul> </ul> <p></p> <h3 id="六流行的os分支"><span style="font-size: 18px"><strong><span style="font-family: 微软雅黑,Microsoft YaHei">六.流行的OS分支</span></strong></span></h3> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong>图示说明:</strong></span></p> </li> <ul class=" list-paddingleft-2"> <li> <p><span style="font-family: 微软雅黑,Microsoft YaHei;font-size: 14px"><strong><img alt="9.png" src="//cto.wang/usr/uploads/2016/07/20160703161430-6.png" title="1460809675181292.png" /></strong></span></p> </li> </ul> </ul> <p></p> <p><!--!doctype--></p> 最后修改:2021 年 12 月 10 日 10 : 53 AM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏 赞赏作者 支付宝微信