zoukankan      html  css  js  c++  java
  • 第七十二课、进程与线程的概念------------------狄泰软件学院

    一、进程的概念

    1、程序是计算机存储系统中的文件数据

    (1)、源代码:文本文件,描述程序的行为和功能

    (2)、可执行程序:二进制文件,直接加载并执行

    2、进程的概念

    (1)、广义概念:程序关于某个数据集合的运行活动

    (2)、狭义概念:程序被加载到内存中执行后得到进程

    3、程序和进程的区别

    (1)、程序是硬盘中的静态文件:存储系统中的一段二进制表示

    (2)、进程是内存中动态的运行实体:数据段、代码段、指针等

    4、程序和进程的联系(有进程一定有程序,但有程序不一定有进程

    (1)、一个程序可能对于多个进程:一个程序多次运行,每次运行产生一个进程

    (2)、一个进程可能包含多个程序:一个程序依赖多个其它动态库

    5、值得注意的地方

    (1)在当代操作系统中资源分配的基本单位是进程

    (2)、而CPU调度执行的基本单位是线程(相当于在CPU眼中根本没有进程

    二、线程的概念

    1、线程的概念

    (1)、进程中的一个执行单元(进程只是资源的集合,这些资源由线程来使用)

    (2)、操作系统中一个可调度的实体

    (3)、进程相对独立的一个控制流序体

    (4)、执行时的现场数据和其它调度所需要的信息

    2、再论main函数

    (1)、线程是进程使用CPU资源的基本单位

    3、深入理解进程和线程

    (1)、进程中可以存在多个线程共享资源

    (2)、线程是被调度的执行单元,而进程不是调度单元(进程想要使用CPU资源就必须借助线程)

    (3)、线程不能脱离进程独立存在只能依赖于进程执行(因为资源是分配个进程的,进程是操作系统分配资源的基本单位)

    (4)、线程有生命期,有诞生和死亡

    (5)、任意线程都可以创建其它新的线程

    三、小结

    (1)、程序是物理存储空间中的数据文件

    (2)、进程是程序运行后得到的执行实体

    (3)、线程进程内部具体执行单元

    (4)、一个进程内部可以有多个线程存在

    (5)、进程是操作系统分配资源的基本单位

    (6)、线程是操作系统调度执行的基本单位

  • 相关阅读:
    dblink && 视图 数据库二合一
    oracle mybatis 逆向工程 应当注意的问题
    关于使用vue搭建前后端分离的项目,部署过程遇到的问题
    详解vue静态资源打包中的坑与解决方案
    bootstarap table 分页导出 vue版
    react中两个控件不是父子关系该怎么传递消息或任意控件怎么传递消息
    虚拟DOM中key的作用
    修改Antd的List列表的单个数据行
    移动端开发如何关闭手机键盘
    在一行显示两个数据,左边的数据右对齐,右边的数据左对齐
  • 原文地址:https://www.cnblogs.com/gui-lin/p/6436032.html
Copyright © 2011-2022 走看看