zoukankan      html  css  js  c++  java
  • 进程简介

    进程的定义

       进程是程序处于一个执行环境中在一个数据集上的运行过程,它是系统进行资源分配和调度的一个可并发执行的独立单位。

       进程是程序的一次执行,该进程可与其它进程并发执行;它是一个动态的实体,在传统的操作系统设计中,进程既是资源的基本分配单元,也是基本的执行单元。

    进程与程序的区别和联系

       (1)程序是静态的,进程是动态的。程序是有序代码的集合;进程是程序的一次执行。

       (2)进程是暂时的,程序的永久的。进程是一个变化的过程,有生命周期,暂时存在,程序没有生命周期,可长久保存。

       (3)进程还是操作系统资源分配和保护的基本单位,程序没有此功能。

       (4)进程与程序的对应关系。通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。

       (5)进程与程序的结构不同。

    进程的组成

       

    进程的状态

       三种进程状态切换

       

       五种进程状态切换

       

       七种进程状态切换

       

    进程调度

       就是按照一定的算法,从就绪队列中选择某个进程占用CPU的方法——对CPU资源进行合理的分配使用,以提高处理机利用率,并使各进程公平得到处理机资源。

    进程调度算法

       1.先到先服务调度 First-Come, First-Served Scheduling (FCFS)

       2.基于优先级调度 Priority Scheduling

       3.最短作业优先调度 Shortest-Job-First Scheduling (SJF)

       4.循环调度 Round-Robin Scheduling (RR)

       5.多层次队列调度 Multilevel Queue Scheduling

    进程间的通信(IPC)

       管道(pipe)

       命名管道(named pipe)

       信号(signal)

       消息队列(message queue)

       共享内存(shared memory)

       信号量(semaphore)

       套接字(socket)

    线程(thread)

       线程(thread)也叫轻型进程,是一个可执行的实体单元。它代替以往的进程,成为现代操作系统中处理机调度的基本单位。

       

       1、线程是进程的一个组成部分,线程由进程创建,因此一个进程中至少存在一个线程,线程还可以创建其它线程。

       2、进程依然是资源分配和保护的基本单位,线程只能在进程的地址空间活动,线程只能使用其所在进程的资源。

  • 相关阅读:
    Ubuntu安装搜狗sougou输入法
    gradle windows 环境变量
    Gradle 使用Maven本地缓存
    Java 命令后台运行jar包
    spark 2.1.0 集群安装
    hadoop 2.7.3 集群安装
    springboot + shiro + cas4.2.7 实战
    cas4.2以下取消https
    cas4.2.7 取消https
    springboot 中使用websocket简单例子
  • 原文地址:https://www.cnblogs.com/CrabMan/p/5412026.html
Copyright © 2011-2022 走看看