操作系统的一些认识

计算机最早可以起源于图灵计算机
现代的计算机大部分基于冯诺依曼模型,冯诺依曼模型将计算机分为五大部分,输入设备--控制器--运算器--存储器--输出设备,cpu与内存通过总线进行数据交互。

cpu的组成

控制单元:编译并分配指令,直接操作cpu的语言有汇编、等,使用cpu出厂时设置的硬件原语
运算单元(ALU):根据控制单元的命令对数据进行算法运算和逻辑运算等操作,属于指令的执行者
存储单元:存放数据和指令的地方,包括cpu内存与寄存器
cpu

cpu的高速缓存

cpu遵从摩尔定律,即每隔18个月性能翻一倍,而内存等硬件的发展较慢,cpu的效率需要数据的高速存取,为了提高cpu的工作效率,在cpu内部划分了三级缓存

cpu示例

插槽:目前支持单个cpu
四核八线程:是指这个cpu有四个物理核,每个物理核又有两个逻辑核
缓存:三级缓存的大小,l1逻辑核独有,l2属于物理核区域,逻辑核共享,l3物理核共享

  1. 读写速度:寄存器>l1>l2>l3>内存
  2. 离cpu的距离:寄存器<1<l2<l3<内存
  3. 内存大小:寄存器<1<l2<l3<内存

cpu在查找数据时会从寄存器依次向下直到内存,在内存中获取到数据后会依次向上备份最后交由cpu使用,存取数据会将缓存行锁住,遵循两大原则

  1. 空间局部性原则:默认目前使用的数据周围的数据也会被使用到
    计算机存储数据的最小单元为缓存行(cacheLine)大小为64B,大数据可以跨行存储,运算时一般会将较大的聚合量数据拆分成标量进行操作
  2. 时间局部性原则:默认目前使用的数据近期很可能会再次被使用
    使用完的数据并不会立即从内存中删除掉

cpu的安全性

计算机将进程的安全等级分为4种,ring0-ring3
以32位系统为例,寻址空间为2的32次方,空间大概为4个G,为了程序运行的安全隔离和稳定,cpu会将内存分为两部分内核空间(1G)和用户空间(3G),目前windows和linux系统内核空间的安全等级为ring0,用户空间的安全等级为ring3。

线程的状态切换与上下文切换

不同的空间中状态分为用户态和内核态,当线程操作的安全等级切换时就会发生用户态与内核态的相互转换成为状态切换
cpu的单核可以同时处理多个线程,当线程被分配的运行时间结束切换到别的线程时,称为上下文切换

线程模型

  1. 内存线程模型(KLT):
    由内核实现线程的状态切换和上下文转换
    速度低于ULT
    线程阻塞不会引起进程阻塞
  2. 用户线程模型(ULT):
    由应用管理线程
    内核对线程状态无感知,无状态切换
    执行速度更快
    线程阻塞会导致整个进程阻塞
    进程与线程:进程是cpu资源分配的最小单位,线程是调度cpu的最小单位,也成为轻量级进程,一个进程包含多个线程

虚拟机指令集架构

  1. 栈指令集架构:
    a. 设计与实现更简单
    b. 使用零地址指令分配
    c. 运行依赖于操作栈,可移植性强
    d. 指令集更小
  2. 寄存器指令集架构:
    a. 使用二级制指令集
    b. 指令集以一地址指令,二地址指令,三地址操作指令为主,
    c. 操作依赖于硬件,可移植性差
    d. 完成一项操作需要的指令更少
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,607评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,239评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,960评论 0 355
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,750评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,764评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,604评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,347评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,253评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,702评论 1 315
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,893评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,015评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,734评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,352评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,934评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,052评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,216评论 3 371
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,969评论 2 355

推荐阅读更多精彩内容

  • 文末领取大图。 这不是一篇教你如何创建一个操作系统的文章,相反,这是一篇指导性文章,教你从几个方面来理解操作系统。...
    cuixiaoyan阅读 832评论 0 0
  • 以下文章来源于公众号Java建设者 ,作者cxuan 文章主要结构图如下 操作系统 现代计算机系统由一个或多个处理...
    码农小光阅读 642评论 0 3
  • 结合 CPU 理解一行 Java 代码是怎么执行的 根据冯·诺依曼思想,计算机采用二进制作为数制基础,必须包含:运...
    零点145阅读 150评论 0 0
  • 表情是什么,我认为表情就是表现出来的情绪。表情可以传达很多信息。高兴了当然就笑了,难过就哭了。两者是相互影响密不可...
    Persistenc_6aea阅读 125,068评论 2 7
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,052评论 0 4