美文网首页
计算机基础-操作系统提升篇

计算机基础-操作系统提升篇

作者: Chaos_YM | 来源:发表于2019-08-18 17:28 被阅读0次

一,线程,进程同步

为什么需要同步


微信截图_20190818173000.png

1.线程同步

以下都是对资源加锁

  • 互斥量(互斥锁)
    逻辑开始加个锁,结束再解锁,其他进程,线程不可以中途执行
    操作系统互斥量API:pthread_mutex_t
    缺点:性能损耗大,耗时增加
  • 自旋锁
    同互斥量原理相似,不同点是不会让出CPU,不适合单核CPU,会造成等待
    优势,避免了进程,线程切换,上下文切换的开销,提高速度

这里没有听懂,再去查查资料

  • 读写锁
    因为存在多读少写类型的资源,为提升效率,读取操作不上锁。
    读写锁是一种自旋锁,只对写操作之间,读写之间,是互斥的。
  • 条件变量
    允许线程睡眠,知道满足条件,唤醒线程;来处理0和满载两个极端值的情况。

2.进程同步

  • 共享内存
    正常情况下,每个进程有自己的进程空间,通过自己的页表管理,指向物理内存的地址。
    多个进程共用物理内存,又相互独立。
    共享内存就是两个进程可以使用同一块物理内存


    捕获.PNG
    捕获.PNG
  • Unix域套接字(进程通信方法)
    类似网络变成的套接字(socket)

3.使用fork系统调用 创建进程

fork函数无参数,创建的子进程会拥有和父进程一样的所有状态
调用一次,返回两次,为子进程的id和0(0是继承自父进程的fork函数返回的空,id是父进程的返回)

相关文章

  • 计算机基础-操作系统提升篇

    一,线程,进程同步 为什么需要同步 1.线程同步 以下都是对资源加锁 互斥量(互斥锁)逻辑开始加个锁,结束再解锁,...

  • 计算机原理+操作系统+网络学习札记

    本篇为计算机原理部分为增加可读性三部分分为三篇文章,另外两片链接如下:计算机基础网络篇计算机基础操作系统篇 一,冯...

  • 计算机基础-操作系统篇

    本篇为操作系统部分为增加可读性三部分分为三篇文章,另外两片链接如下:计算机基础网络篇计算机原理篇 一,操作系统概览...

  • 计算机基础

    计算机基础操作系统计算机网络

  • 1 计算机操作系统概述

    1 走进计算机操作系统 一:什么是计算机操作系统?计算机操作系统定义:配置在计算机硬件基础之上的第一层软件,可以理...

  • 技能树

    linux:熟悉常用命令,暂无shell编程经历。下一步《鸟哥私房菜基础篇》,《深入理解计算机操作系统》,《计算机...

  • Java 后台开发学习规划

    基础 < > 除GUI编程之外的其他基础部分 <<深入理解计算机系统>>(CSAPP), <<计算机操作系统>> ...

  • 网络基础知识:网络协议

    一.操作系统基础 操作系统:(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机...

  • 计算机基础

    Python基础 列表与元组的区别 Python多进程 操作系统基础 操作系统与多进程 计算机网络基础 三次握手 ...

  • 计算机基础面试整理

    基础篇:操作系统、计算机网络 一:操作系统 1.进程的有哪几种状态,状态转换图,及导致转换的事件。 2.进程与线程...

网友评论

      本文标题:计算机基础-操作系统提升篇

      本文链接:https://www.haomeiwen.com/subject/kjxdsctx.html