zoukankan      html  css  js  c++  java
  • 进程&线程

     


    线程是进程内执行代码的独立实体
    各进程的地址空间被分成了 用户空间2G 和 系统空间2G两部分
     
    Windows使用了两种访问模式:内核模式和用户模式
    分别使用了 3 和 0 两个特权级别
     
    在CPU的支持下
    每个进程都被赋予自己的私有地址空间
    当进程内的线程运行时
    该线程仅仅能够访问属于它的进程的内存
    而属于其他进程的内存被屏蔽起来

    应用程序的启动过程就是进程的创建过程


    内核对象
    是系统提供的
    用户模式下代码

    内核模式下代码
    进行交互的基本接口
    一个内核对象是一块内核分配的内存
    只能被运行在内核模式下的代码访问 
    内核对象和普通的数据结构间的最大区别是
    它的内部数据结构是隐藏的
    必须调用一个对象服务才能从此对象服务中得到数据
    或者是向其输入数据
    而不能直接读或者改变对象内部的数据






    进程内核对象:操作系统使用此内核对象来管理该进程

    OS是通过调用CreateProcess函数来创建新的进程的
    当调用了CP进程,系统会创建一个进程内核对象
    其使用计数被初始化为1
    此进程对象不是这个进程本身
    仅仅是一个系统用来管理这个进程的小型数据结构

    然后系统会为新的进程创建一个虚拟地址空间,加载应用程序运行时所需要的代码和数据 
  • 相关阅读:
    postgresql 2012 大会PPT下载 Joe
    Postgresql连接 Joe
    查看Postgresql的连接数 Joe
    greta使用
    CString GetFileDir(const CString& csFile)
    UnicodeToAnsi函数
    myeclipse优化方案
    bool CreatedMultipleDirectory( char* direct)
    LPWSTR GBK(LPCSTR plszUtf8, WCHAR* lpszGBK)
    真正整合资源的高手
  • 原文地址:https://www.cnblogs.com/Cheetos/p/5177863.html
Copyright © 2011-2022 走看看