zoukankan      html  css  js  c++  java
  • 读Windows核心编程-5-作业

    作业(Job)

    有时候需要把一些进程集中管理,如终止一个进程以及它产生的子进程,但由于Windows并没有维护进程间父子关系,所以除非进程本身以某种方式记录这些信息,否则很难做到管理这种父子进程树。而作业(job)恰好能解决这一问题。

    Job就像是一个"沙箱"或者进程容器,不仅能将多个进程放在一起管理,还能对其包含的进程施加额外的限制,例如:作业中的进程能使用的CPU时间,是否能注销,是否能方位用户对象等。

    相关函数

    IsProcessInJob: 判断进程是否属于某个已有的Job

    CreateJobObject:创建作业

    SetInformationJobObject:对作业及其中的进程施加限制,可能的安全限制见下表

    AssignProcessToJobObject:将进程放入指定的Job,注意,已经在某个Job中的进程不能重新制定,也不能将它从该Job中移除,这样的安全机制能保证进程不能脱离对其施加的安全限制。

    CloseHandle关闭Job句柄时不会导致Job中的进程结束,只是Job对象添加了删除标志,Job会等待其中所有的进程结束,才被删除。

     

    SetInformationJobObject

    限制类型

    参数

    描述

    基本限额

    JobObjectBasicLimitInformation

    防止Job中的进程独占系统资源

    扩展基本限额

    JobObjectExtendedLimitInformation

    同上

    基本的UI限制

    JobObjectBasicUIRestrications

    防止进程更改用户界面

    安全限额

    JobObjectSecurityLimitInformation

    防止进程访问安全资源(文件,注册表)

     

    TerminatebObject:终止job中所有的进程,并设置同一返回值

    QueryInformationJobObject:查询job中的进程信息以及相应的限制

     

     

  • 相关阅读:
    android基本控件学习-----Date&Time
    android基本控件学习-----ScrollView
    android基本控件学习-----SeekBar&RatingBar
    android基本控件学习-----ProgressBar
    android基本控件学习-----ToggleButton&Switch
    android基本控件学习-----RadioButton&CheckBox
    android基本控件学习-----ImageView
    android基本控件学习-----Button
    android基本控件学习-----EditText
    android基本控件学习-----TextView
  • 原文地址:https://www.cnblogs.com/dlbrant/p/3163248.html
Copyright © 2011-2022 走看看