zoukankan      html  css  js  c++  java
  • 多任务编程 理论

    多任务编程
      意义 : 充分利用计算机的资源提高程序的运行效率
      定义 : 通过应用程序利用计算机的多个核心达到同时执行多个任务的目的,一次提高计算机运行效率。

    实施方案 : 多进程  多线程
      并行 :  多个计算机核心在同时处理多个任务,这时多个任务间是并行关系。
            

      并发 :  同时处理多个任务,内核在多个任务间不断的切换,达到好像都在处理运行的效果。但实际一个时间点内核只能处理其中一个任务。

    进程(process)
      定义 :程序在计算机中的一次运行过程
      
    程序 :是一个可执行的文件。是静态的占有磁盘空间,不占有计算机的运行资源。
    进程 :进程是一个动态过程的描述,占有计算机的资源,有一定的生命周期。
      * 同一个程序的不同运行过程是不同的进程。占用资源和生命周期都不一样

      进程的创建流程
        1 用户空间通过运行程序或者调用接口发起创建进程
        2 操作系统接收用户请求,开始创建进程
        3 操作系统分配计算机资源,确实进程状态,开辟进程空间等工作
        4 操作系统将创建好的进程提供给应用程序使用
      进程特征
        1 进程之间运行互不影响,各自独立运行
        2 进程是操作系统资源分配的最小单位
        3 每个进程空间独立,各自占有一定的虚拟内存

    cpu时间片
      如果一个进程占有计算机核心,我们称为该进程占有计算机CPU时间片。
      * 多个任务之间是争夺cpu的关系
      * 谁占有cpu最终是操作系统决定

    PCB(进程控制块)
      在内存中开辟的一块空间,用来记录进程的信息
      * 进程控制块是操作系统查找识别进程的标志
    查看进程信息 : ps -aux
    PID(process ID) : 在操作系统中每个进程都有一个唯一的ID号用来区别于其他进程。ID号由操作系统自动分配,是一个大于0 的整数
    父子进程 : 在系统中除了初始化进程,每一个进程都有一个父进程,可能有0个或者多个子进程,由此形成父子进程关系。
      ps -aux  查看进程的信息
      ps -ajx  可查看父进程的PID,字段【PPID】
      pstree  查看进程树结构    
            

    进程的状态
      三态
        * 就绪态:进程具备执行条件,等待系统分配资源
        * 运行态:进程占有CPU处于运行状态
        * 等待态:进程暂时不具备执行条件,阻塞等待满足条件后再执行
           


      五态(三态基础上增加新建态,终止态)
        * 新建态: 创建一个新的进程,获取资源的过程
        * 终止态: 进程执行结束,资源释放回收的过程
          


     
     
     
  • 相关阅读:
    SpringMVC中静态获取request对象 Spring中获取 HttpServletRequest对象【转载】
    springcloud 的loadbalancer 轮询算法切换方法 2021.4.3
    springboot项目启动增加图标
    rabbitmq 端口作用以及修改方法
    centos8 安装rabbitmq
    springcloud config client Value获取不到信息的问题的处理方法
    springcloud config配置git作为数据源然后启动报错 If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
    Sublime Text的列模式如何操作
    centos8 安装redis
    jQuery简单的Ajax调用
  • 原文地址:https://www.cnblogs.com/Skyda/p/9619841.html
Copyright © 2011-2022 走看看