当前位置: 首页 > news >正文

网站建设html定制网站建设公司哪家便宜

网站建设html,定制网站建设公司哪家便宜,做个英文网站多少钱,网站的字体颜色一.CPU指令集权限 指令集是实现CPU实现软件指挥硬件执行的媒介#xff0c;具体来说每一条汇编语句都对应了一条CPU指令#xff0c;而非常多的CPU指令再一起组成一个甚至多个集合#xff0c;指令的集合叫CPU指令集#xff1b; 因为CPU指令集可以操纵硬件#xff0c;会造成… 一.CPU指令集权限 指令集是实现CPU实现软件指挥硬件执行的媒介具体来说每一条汇编语句都对应了一条CPU指令而非常多的CPU指令再一起组成一个甚至多个集合指令的集合叫CPU指令集 因为CPU指令集可以操纵硬件会造成较大的影响所以会对CPU指令集权限分级。 Inter把CPU指令集分为四级从高到低为ring0   ring1  ring2 ring3 Linux系统仅采用ring 0 和 ring 3 这2个权限。 ring0也被叫做内核态 完全在操作系统内核中运行 ring3被叫做用户态在应用程序中运行 二.用户态内核态 当我们在写程序是凡是涉及到IO读写、内存分配等硬件资源的操作时往往不能直接操作而是通过一种叫系统调用的过程让程序陷入到内核态运行然后内核态的CPU执行有关硬件资源操作指令得到相关的硬件资源后在返回到用户态继续执行之间还要进行一系列的数据传输。 内核态也叫内核空间是内核进程/线程所在的区域。主要负责运行系统、硬件交互。 用户态也叫用户空间是用户进程/线程所在的区域。主要用于执行用户程序。 内核态主要工作向下控制硬件资源向内管理操作系统资源包括进程的调度和管理、内存的管理、文件系统的管理、设备驱动程序的管理以及网络资源的管理向上则向应用程序提供系统调用的接口。 2.1内核态与用户态指令集权限区别 指令集权限用户态与内核态的概念主要区别就是CPU指令集权限的区别进程中要读写IO必然会用到ring0级别的指令集而此时CPU指令集权限只有ring3为了可以操作ring0的指令集C P U 切换指令集操作权限级别为 ring 0C P U再执行相应的ring 0 级别的 C P U 指令集内核代码执行的内核代码会使用当前进程的内核栈。 操作系统在执行用户程序时主要工作在用户态只有在其执行没有权限完成的任务时才会切换到内核态。 PS每个进程都有两个栈分别是用户栈与内核栈对应用户态与内核态的使用 2.2.用户态与内核态空间 内存资源在内存资源上的使用操作系统对用户态与内核态也做了限制每个进程创建都会分配 虚拟空间地址    以linux32位操作系统为例子他的寻址空间是4G2的32次方而操作系统会把虚拟空间换分为两部分一部分是内核空间另一部分是用户空间高位的 1G从虚拟地址 0xC0000000 到 0xFFFFFFFF由内核使用而低位的 3G从虚拟地址 0x00000000 到 0xBFFFFFFF由各个进程使用。 用户态只能操作 0-3G 范围的低位虚拟空间地址内核态0-4G 范围的虚拟空间地址都可以操作尤其是对 3-4G 范围的高位虚拟空间地址必须由内核态去操作补充3G-4G 部分大家是共享的指所有进程的内核态逻辑地址是共享同一块内存地址是内核态的地址空间这里存放在整个内核的代码和所有的内核模块以及内核所维护的数据 每个进程的 4G 虚拟空间地址高位 1G 都是一样的即内核空间。只有剩余的 3G 才归进程自己使用换句话说就是 高位 1G 的内核空间是被所有进程共享的。 最后做个小结我们通过指令集权限区分用户态和内核态还限制了内存资源的使用操作系统为用户态与内核态划分了两块内存空间给它们对应的指令集使用 2.3.用户态访问内核态资源的方式 用户态要主动切换到内核态那必须要有入口才行实际上内核态是提供了统一的入口下面是Linux整体架构图 用户态的应用程序可以通过三种方式来访问内核态的资源 1系统调用2库函数3Shell脚本 1.系统调用 从上图我们可以看出来通过系统调用将Linux整个体系分为用户态和内核态为了使应用程序访问到内核的资源如CPU、内存、I/O内核必须提供一组通用的访问接口这些接口就叫系统调用。 系统调用是操作系统的最小功能单位根据不同的应用场景不同的Linux发行版本提供的系统调用数量也不尽相同大致在240-350之间。系统调用组成了用户态跟内核态交互的基本接口。 2.库函数 库函数就是屏蔽这些复杂的底层实现细节减轻程序员的负担从而更加关注上层的逻辑实现。它对系统调用进行封装提供简单的基本接口给用户。例如openwriteread等等。库函数根据不同的标准也有不同的版本例如glibc库posix库等。 注系统调用过多这势必会加重程序员的负担良好的程序设计方法是重视上层的业务逻辑操作而尽可能避免底层复杂的实现细节。 库函数正是为了将程序员从复杂的细节中解脱出来而提出的一种有效方法。它实现对系统调用的封装将简单的业务逻辑接口呈现给用户方便用户调用从这个角度上看库函数就像是组成汉字的“偏旁”。 如“人”对于复杂操作我们借助于库函数来实现如“仁”。显然这样的库函数依据不同的标准也可以有不同的实现版本如ISO C标准库POSIX标准库等。   3.Shell脚本 Shell 就是一个“中间商”它在用户和内核之间“倒卖”数据只是用户不知道罢了。 Shell 本身并不是内核的一部分它只是站在内核的基础上编写的一个应用程序它和 QQ、迅雷、Firefox等其它软件没有什么区别。然而Shell 也有着它的特殊性就是开机立马启动并呈现在用户面前用户通过 Shell 来使用Linux不启动 Shell 的话用户就没办法使用 Linux。 shell的作用shell 能够接收用户输入的命令并对命令进行处理处理完毕后再将结果反馈给用户比如输出到显示器、写入到文件等这就是大部分读者对 Shell 的认知。 2.4.用户态和内核态的切换 相信大家都听过这样的话「用户态和内核态切换的开销大」但是它的开销大在那里呢简单点来说有下面几点 保留用户态现场上下文、寄存器、用户栈等复制用户态参数用户栈切到内核栈进入内核态额外的检查因为内核代码对用户不信任执行内核态代码复制内核态代码执行结果回到用户态恢复用户态现场上下文、寄存器、用户栈等 实际上操作系统会比上述的更复杂这里只是个大概我们可以发现一次切换经历了「用户态 - 内核态 - 用户态」 最后来说说什么情况会导致用户态到内核态切换 系统调用用户态进程主动切换到内核态的方式用户态进程通过系统调用向操作系统申请资源完成工作例如 fork就是一个创建新进程的系统调用系统调用的机制核心使用了操作系统为用户特别开放的一个中断来实现如Linux 的 int 80h 中断也可以称为软中断。由于用户态无法完成某些任务用户态会请求切换到内核态内核态通过为用户专门开放的中断完成切换。异常当 C P U 在执行用户态的进程时发生了一些没有预知的异常这时当前运行进程会切换到处理此异常的内核相关进程中也就是切换到了内核态如缺页异常中断当 C P U 在执行用户态的进程时外围设备完成用户请求的操作后会向 C P U 发出相应的中断信号这时 C P U 会暂停执行下一条即将要执行的指令转到与中断信号对应的处理程序去执行也就是切换到了内核态。如硬盘读写操作完成系统会切换到硬盘读写的中断处理程序中执行后边的操作等。 2.5个人问题 1.内核态用户态切换运行具体过程 左边是普通的用户进程平时在运行时是访问的低3GB的虚拟内存空间当通过系统调用后此用户进程陷入到内核态执行的内核提供的系统调用API。从用户态进入到内核态涉及到状态切换因此需要保留现场用户态和内核态各自都维护了一套栈空间。 右边是内核线程在内核中可以理解为进程其只有1GB的内核空间无用户态地址空间。由于内核态空间与用户态空间采用了不同的映射机制虽然内核态只有1GB的虚拟地址空间但是它可以访问所有的物理内存地址。 *学习记录来源 从根上理解用户态与内核态 - 知乎 (zhihu.com) Linux常问面试问题之——用户态与内核态、用户态访问内核态资源的方式、用户态到内核态的切换_用户态和内核态数据存储访问方式都是什么-CSDN博客
http://www.hkea.cn/news/14543002/

相关文章:

  • 可以做科学模拟实验的网站app开发与网站开发
  • 网站优化千牛帮wordpress 电子商务主题
  • 如何把电脑改成服务器做网站2015年网页游戏排行榜
  • 没有虚拟主机怎么建网站游戏的网站
  • asp网站开发需要什么flex做的网站
  • 网站开发搜索功能网站模板下载湖南岚鸿网站
  • 漳州手机网站建设公司哪家好宜兴开发区人才网
  • 做彩票网站用什么服务器网站开发的费用属于什么科目
  • wordpress建立商城优化20条措施
  • 营销网站售后调查网站防火墙咋样建设
  • 在工行网站上如何做现金理财wordpress 备案号插件
  • 做网站推广的工资学网页制作的好处
  • wordpress live-2d汉口网站优化
  • 基层建设检索网站网站数据库是干什么的
  • 网站设计手机网站开发流程中客户的任务是什么
  • 自媒体wordpress主题河北seo
  • 如何做简单的网站 域名邮箱上海市住房城乡建设部网站
  • 西安网站建设联系电话做县城门户网站
  • 哪里培训做网站找做废薄膜网站
  • 淄博微网站开发淘宝客建立网站
  • net网站开发实例wordpress tinymce advanced
  • 网页设计网站架构图片免费素材网
  • 综合门户网站建设方案用c语言做公司网站
  • 建设门户公司网站wordpress百度熊掌
  • 茶叶怎么做网站销售wordpress 接入小程序
  • c++网站开发网站内链建设不可忽视的地方
  • 国企网站建设报告贵州建设水利厅考试网站
  • 三门峡河南网站建设玉溪网站网站建设
  • 牛视频网站建设南通seo网站优化软件
  • 气象网站建设的自查报告南宁网站忧化