zoukankan      html  css  js  c++  java
  • 操作系统_第二章_进程与线程

    2018-06-30

    1.进程:对正在运行的程序的一个抽象

    2.一个进程就是一个正在执行的程序的实例

    3.快速的切换称为:多道程序设计

    4.一个进程是某种类型的一个活动,它有程序,输入,输出,以及状态

    5..四种主要的事件会导致进程的创建

      系统初始化

      正在运行的程序执行了创建进程的系统调用

      用户请求创建一个新进程

      一个批处理作业的初试化

    6.停留在后台进程的称为守护进程

    7.shell中键入sort就可以创建进程了

    8.内存一般使用写时复制的方法进行内存共享

    9.进程的终止

      正常退出

      出错退出

      严重错误

    10.调用exit来结束进程

    11.进程挂起的原因

      程序自身固有的原因,在键入用户命令行之前,无法执行命令

      由系统技术上的原因引起的,没有足够的CPU

    12.进程的三种状态:

      运行态

      阻塞态 :pause

      就绪态

    13.操作系统的最低层是调度程序,上面有很多的进程

    14.进程表->进程表项->包括了进程状态的重要信息->进程管理,文件管理,存储管理

    15.与每一个I/O类关联的是一个称作中断向量的位置

    16.所有的中断都是从保存寄存器开始

    17.CPU的利用率:1-p^n  (n称为多道程序设计的道数)

    18.创建线程的原因:

      有了这样的抽象,将不用再考虑中断,定时器和上下文切换(进程切换)

      线程比进程更轻量,更容易创建,也更容易撤销

      涉及性能方面的讨论

    19.线程:并行实体共享同一个地址空间和所有可用数据的能力

    20.高速缓存

    21.有限状态机:每个计算机都有一个被保存的状态,存在一个会发生且使得相关状态发生改变的事件集合

    22.只有当系统调用只阻塞调用线程而不是阻碍这个进程时

    23临界区域:把对共享内存进行访问的程序片段称作临界区域

    24.忙等待的互斥:

      屏蔽中断

      锁变量

      严格轮换法  

      Peterson解法

    25.生产者-消费者问题(有界缓冲区问题)

      有可能会出现竞争问题:

      原因:未对count的访问未加限制

        其实看不太懂,首先,为什么wakeup信号丢失就会导致这么严重的问题

      修改规则:加上一个唤醒等待位

    26.

  • 相关阅读:
    andorid 平台调用Web Service , 图片传输
    android 中在CMD中查看sqlite
    Click ListView Item跳转Activity
    C# 中几个小“陷阱”
    Xamarin 手动安装步骤+破解(最新版Xamarin V3)
    语音播报实时天气
    手动创建VS单元测试,显示代码覆盖率
    Ubuntu 12.10 配置MyEclipes 10.7环境(加破解)
    C#对象赋值出现的诡异问题,或许你也遇到过,有待你的解决
    jquery 小插件,完成“输入字段预期值的提示信息”,防html5 placeholder属性
  • 原文地址:https://www.cnblogs.com/zwz178/p/9246678.html
Copyright © 2011-2022 走看看