`
wangminshe89
  • 浏览: 670005 次
文章分类
社区版块
存档分类
最新评论

进程

 
阅读更多

进程

进程模型:计算机上所有可运行的软件,通常包括操作系统,被组织成若干顺序进程(sequentialprocesses),简称进程。

每个进程拥有自己的控制流程(自己的虚拟CPU),并且每个都独立地运行。当程序开始运行是,它自己的虚拟cpu被装入到物理cpu中;当程序执行时间到或者结束时,物理cpu被保存到当前程序的虚拟cpu中(在内存中),就这样不停地在多个进程中来回切换。

进程的创建:进程的创建有四个主要的原因

1.系统初始化
2.正在运行的一个进程执行了创建进程的系统调用
3.用户请求创建一个新进程
4.批处理作业的初始化

进程的终止:通常可能是由于下列原因

1.正常退出(自愿)
2.出错退出(自愿),比如执行的一条非法指令,应用了不存在的内存,或除数是零。在Minix3中,进程可以告诉OS,它希望自行处理某些类型的错误,在这类错误中,进程会受到信号(被中断),而不是在这类错误出现时终止。
3.严重错误(非自愿)),比如用户输入cc foo.c来编译程序foo.c,而这个文件不存在,那么编译器就会简单退出
4.被其他进程杀死(非自愿)

进程的层次结构:树结构

进程的状态:

1.运行态(Running,此时占用cpu)
2.就绪态(Ready,可运行,因为其他进程在运行,所有暂时被挂起,得等到被调度时才能运行)
3.阻塞态(Blocked)
进程模型:

最底层处理中断和调度,上层是顺序进程。

分享到:
评论

相关推荐

    模拟进程管理c语言至少要有:创建新的进程;查看运行进程;换出某个进程;杀死运行进程以及进程之间通信等功能。

    进程管理 1.实验内容 至少要有:创建新的进程;查看运行进程;换出某个进程;杀死运行进程以及进程之间通信等功能。 2.实验提示 PCB结构通常包括以下信息:进程名,进程优先数,轮转时间片,进程所占用的CPU时间,...

    模拟进程结构进程状态和进程控制

    1、 用PCB表示整个进程实体,利用随机数方法或键盘控制方法模拟进程执行中产生的事件,或者利用基于图形界面的鼠标或者键盘操作控制进程管理内容。 2、 定义PCB(可以采用静态结构或动态结构):包括理论PCB中的基本...

    Linux 僵尸进程产生原因及解决方法

    Linux 允许进程查询内核以获得其父进程的 PID,或者其任何子进程的执行状态。例如,进程可以创建一个子进程来执行特定的任务,然后调用诸如 wait() 这样的一些库函数检查子进程是否终止。如果子进程已经终止,那么,...

    操作系统实验-进程和进程通信

    要求在该程序中还要使用进程的睡眠、进程图象改换、父进程等待子进程终止、信号的设置与传送(包括信号处理程序)、子进程的终止等有关进程的系统调用。 分别利用UNIX的消息通信机制、共享内存机制(用信号灯实施...

    意天Windows助手(进程强杀/进程守护/进程查询) v1.0.0.30简体中文绿色免费版

    意天Windows助手(进程强杀/进程守护/进程查询) v1.0.0.30简体中文绿色免费版 该软件是一款真正永久免费软件,您无需为使用软件支付任何费用! 进程树图: 用树的模式显示进程列表,让您可以轻松了解父进程与子进程间的...

    进程的管道通信 进程管理

    使用系统调用pipe()建立一个管道,两个子进程分别向管道写信息,父进程则从管道读出来自子进程的信息,显示在屏幕上,记录屏幕的显示结果,分析原因。 任务 编制一段程序,实现进程的管道通信。使用系统调用pipe()...

    VC进程ID获得主窗口句柄获得进程名

    VC获得进程ID获得主线程ID获得窗口句柄获得主窗口获得进程名 1.窗口类名 窗口句柄 窗口标题 窗口句柄 HWND FindWindow( LPCTSTR lpClassName, //窗口类名 可用 VC或者VS自带的Spy++查看 LPCTSTR lpWindowName //...

    设计一个有 N个进程共行的进程调度程序

    1、进程调度算法:采用动态最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)。 2、每个进程有一个进程控制块( PCB)表示。进程控制块可以包含如下信息: 进程名---进程标示数 ID 优先数 PRIORITY ...

    linux实验四 进程控制实验

    1、掌握进程的概念,明确进程和程序的区别 2、认识和了解并发执行的实质。 3、学习进程创建方法及进程树的概念。 二、实验内容 1、进程的创建 编写一段程序,使用系统调用fork( )创建两个子进程,在系统中有一个父...

    【C语言源代码】 操作系统-短进程优先-进程调度算法

    C语言实现:短进程优先-进程调度算法 1. 采用“短进程优先”调度算法对五个进程进行调度。每个进程有一个进程控制块( PCB)表示。进程控制块可以包含如下信息:进程名、到达时间、需要运行时间、已用CPU时间、进程...

    weblogic守护进程:监控weblogic进程,当发现进程停止时调用重启脚本重启

    #功能:weblogic守护进程:监控weblogic进程,当发现进程停止时调用重启脚本重启 #参数:进程唯一标识码,例如“weblogic” #依赖脚本:数据库操作脚本dbExecurteSQL.sh,weblogic重启脚本$PSSC_DOMAIN/startPssc.sh...

    利用简单的结构和控制方法模拟进程结构、进程状态转换和进程控制

    方法:用PCB表示整个进程实体,利用键盘交互式命令控制方法模拟进程执行中产生的事件。 实现过程: 1、 定义PCB(可以采用静态结构或动态结构):包括理论PCB中的基本内容,如ID、进程状态、队列指针。由于无法实现...

    进程的管道通信编制一段程序,实现进程的管道通信,使用系统调用pipe()建立一个管道文件;两个子进程P1和P2

    进程的管道通信 编制一段程序,实现进程的管道通信,使用系统调用pipe()建立一个管道文件;两个子进程P1和P2 分别向管道各写一句话: Child1 is sending a message! Child2 is sending a message! 而父进程则从...

    进程管理 进程的软中断通信

    使用系统调用fork()创建两个子进程,使用系统调用signal()让进程捕捉用alarm函数设置时钟的时间段终止时产生的信号,当捕捉到该信号后,父进程使用系统调用kill()向两个子进程发出信号,子进程捕捉到信号后...

    进程优先度算法

     每个用来标识进程的进程控制块PCB用结构(记录)来 描述,根据需要,它包括以下字段:  进程标识数ID。  进程优先数Priority,并规定优先数越大的进程,其优先权越高。采用简单轮转法时该字段无用。  进程...

    进程创建模拟实验

    实验1 进程创建模拟实验 实验内容:分析进程创建函数createpc程序模块 输入实验提供的代码后,可以输入createpc命令创建进程,输入showdetail显示每个进程及其子进程的信息,测试命令解释如下: createpc 创建进程...

    QT之进程和进程间通信(IPC)

    进程是操作系统的基础之一。一个进程可以认为是一个正在执行的程序。我们可以把进程当做计算机运行时的一个基础单位。关于进程的讨论已经超出了本章的范畴,现在我们假定你是了解这个概念的。 在 Qt 中,我们使用...

    操作系统实验,进程控制

    操作系统实验,压缩包中包括Linux和windows进程控制源代码及实验报告。 进程控制实验题目: 设计并实现Unix的“time”命令。“mytime”命令通过命令行参数接受要运行的程序,创建一个独立的进程来运行该程序,并...

    32位进程枚举64位进程模块信息

    ' WOW64的32位程序其实拥有64位程序的全部功能,包括32注入64位、枚举64位进程模块、Hook64位模块、调用64位API等等等等....' 因为WOW64程序不是完全的虚拟化的,是伪虚拟化,本身就是一个64位进程,只是自己以为是32...

    Linux进程的睡眠和唤醒

    1 Linux进程的睡眠和唤醒 在Linux中,仅等待CPU时间的进程称为就绪进程,它们被放置在一个运行队列中,一个就绪进程的状 态标志位为TASK_RUNNING。一旦一个运行中的进程时间片用完, Linux 内核的调度器会剥夺这个...

Global site tag (gtag.js) - Google Analytics