windows API:被文档化的可以调用的子例程,如CreateProcess

原生的系统服务(执行体系统服务):未被文档化的、可以再用户模式下调用的底层服务,如NtCreateProcess

内核支持函数:位于操作系统内核只能在内核模式下调用的函数,如ExAllocatePool

windows服务:由windows服务管理器启动的的进程

DLL:一组可调用的子例程,合起来链接成一个二进制文件

程序:静态的指令序列

进程:一个包含了执行一个程序的特定实例所用到的各种资源的容器,由以下元素构成
1.一个私有的虚拟地址空间
2.一个可执行的程序,它定义了初始的代码和数据,并且被映射到该进程的虚拟地址空间
3.一个已打开的句柄列表,该进程内所有的县城都可以访问这些系统资源
4.一个称谓访问令牌的安全环境,表示了与该进程关联的用户、安全组和特权
5.一个被称为进程ID的唯一标识
6.至少一个执行线程

线程:一个进程内部的实体,包括以下一些最基本的部件
1.代表处理器状态的一组CPU寄存器的内容
2.一个线程在内核模式下执行时候的栈和一个线程在用户模式下执行时候的栈
3.TLS(线程局部存储区),各个子系统、运行库和DLL都会用到该存储区域
4.一个称为线程ID的唯一标识符,在内部被称为客户ID
5.线程自己的安全环境
线程上下文/环境(context):易失寄存器、栈和TLS合起来就是线程上下文,这些结构与底层系统结构相关

进程的安全环境被存储在访问令牌对象中,该对象还包含了该进程的安全标识符和凭证
虚拟地址描述符(VAD):一些数据结构,内存管理器利用这些数据结构来记录一个进程所使用的虚拟
地址

为了避免用户应用程序访问或修改关键操作系统数据,使用两种处理器的访问模式,用户模式和内核模式
内核模式:一种处理器执行的模式,它允许访问所有的系统内存和CPU指令
对象类型:包含了一个系统定义的数据类型、在该数据类型的实例上进行操作的一些函数以及一组
对象属性
对象:指某一个静态定义的对象类型的单个运行时的实例。任何一个进程都是进程对象类型的一个实例,如此等等

句柄:指向对象实例的引用

Windows系统基本概念的更多相关文章

  1. Windows系统的四个重要概念——进程、线程、虚拟内存、内核模式和用户模式

    引言 本来在写一篇Windows内存管理的文章,写着写着就发现好多基础的概念都要先讲.更可怕的是,这些基础的概念我却不能完全讲清楚.只好再把这本<深入解析Windows操作系统>翻到第一章 ...

  2. UEFI+GPT模式下的Windows系统中分区结构和默认分区大小及硬盘整数分区研究

    内容摘要:本文主要讨论和分析在UEFI+GPT模式下的Windows系统(主要是最新的Win10X64)中默认的分区结构和默认的分区大小,硬盘整数分区.4K对齐.起始扇区.恢复分区.ESP分区.MSR ...

  3. 收集入侵Windows系统的证据

    随着网络的不断扩大,网络安全更加会成为人们的一个焦点,同时也成为是否能进一步投入到更深更广领域的一个基石.当然网络的安全也是一个动态的概念,世界上没有绝对安全的网络,只有相对安全的网络.相对安全环境的 ...

  4. Windows系统的安装

    一.写在前面        笔者最近因为换工作,在家待业甚感无聊,于是想要整理一些在Windows系统的一些安装方法和下载资源,一来给自己做个备忘,二来把一些不成熟的想法分享出去,希望大家予以指正. ...

  5. Windows系统架构

    操作系统模型   大多数操作系统中,都会把应用程序和内核代码分离运行在不同的模式下.内核模式访问系统数据和硬件,应用程序运行在没有特权的模式下(用户模式),只能使用有限的API,且不能直接访问硬件.当 ...

  6. 也谈如何获取真实正确的 Windows 系统版本号

    关于 GetVersion 系列接口 关于如何获取 Windows 系统版本号的话题,网上已经有了太多的帖子.但个人觉得总结的都不尽全面,或者没有给出比较稳定的解决方案. 众所周知,获取 Window ...

  7. Windows系统编程之异步I/O和完成端口

    Windows系统编程之异步I/O和完成端口[作者]北极星2003[来源]看雪技术论坛(bbs.pediy.com) [时间]2006年7月1日 一.  同步I/O和异步I/O 在介绍这部分内容之前先 ...

  8. Django框架搭建(windows系统)

    Django框架搭建(windows系统) 一.Django简介 开放源代码的Web应用框架,由Python语言编写,一个大而全的框架. 1.web框架介绍 具体介绍Django之前,必须先介绍WEB ...

  9. c运行时库,c标准库,Windows系统api的关系

    原文地址:http://blog.csdn.net/seastars_sh/article/details/8233324 C运行库和C标准库的关系 C标准库,顾名思义既然是标准,就是由标准组织制定的 ...

随机推荐

  1. iOS获取设备唯一编号,就算删除app从新安装也不变的方法

    第三方开源代码 https://github.com/soffes/SAMKeychain 使用方法 //获取设备信息32 位字符串 -(NSString *)getDeviceString{ NSS ...

  2. LaunchScreen.xib 设置启动图

    1.LaunchScreen.xib 中拖入UIImageView 约束都设置为0 2.新建一个Image Set 起名为LaunchScreen  Devices设置为:Device Speecif ...

  3. Javascript:DOM表格操作

    需求说明: /* *需求说明: *获取元素:tBodies,tHead,tFoot,rows,cells *表格的创建 *数据添加 *隔行变色 *删除操作,剩余表格重新计算,实现隔行变色 */ HTM ...

  4. RTX51 Tiny实时操作系统学习笔记—初识RTX51 Tiny

     一,RTX51 Tiny简单介绍    RTX51 Tiny是一种实时操作系统(RTOS),能够用它来建立多个任务(函数)同一时候运行的应用(从宏观上看是同一时候运行的,但从微观上看,还是独立运行的 ...

  5. 记录一下自己总结出来的,在内网环境下使用maven打包的各种方法,包括各种常用的打包方式(一)

    (一)内外网代理仓库搭建 想了一下,先用这个MAVEN安装部署的说明随笔,作为自己的第一篇技术帖,往后会陆陆续续将自己研究的心得发出来,留下脚印.希望有大神可以指点 一 .文章主要解决问题说明 1) ...

  6. Python:ajax 学习笔记

    什么是 AJAX ? AJAX = 异步 JavaScript 和 XML. AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味 ...

  7. WINDOWS系统下环境变量PATH和CLASSPATH的意思

    1 PATH 对于没有包含路径的命令,WINDOWS系统会默认去Windows 目录(C:\windows)和系统目录(C:\windows\system32)查找,如果没有找到,就去PATH变量内包 ...

  8. zepto源码研究 - deferred.js(jquery-deferred.js)

    简要:zepto的deferred.js 并不遵守promise/A+ 规范,而在jquery v3.0.0中的defer在一定程度上实现了promise/A+ ,因此本文主要研究jquery v3. ...

  9. (四)JS学习笔记 - 模式 - 观察者模式

    理解观察者模式 简单的讲,一个对象作为特定任务或是另一对象的活动的观察者,并且在这个任务或活动发生时,利用事件的形式通知观察者. 观察者的使用场合 当一个对象的改变需要同时改变其它对象,并且它不知道具 ...

  10. php时间戳与时间转换

    PHP时间大的来分有两种,一是时间戳类型(1228348800),二是正常日期格式(2008-12-4) 所以存到数据库也有两种形式了(真正不止,我的应用就两种),时间戳类型我是保存为字符串的,这个是 ...