C/C++进程保护大作业:内核中的用户管理与进程过滤

需积分: 15 1 下载量 96 浏览量 更新于2024-10-27 收藏 210KB ZIP 举报
资源摘要信息:"C/C++-数据结构-进程保护-操作系统大作业" 标题:"C/C++-数据结构-进程保护-操作系统大作业" 描述:"已调试通过,如有问题请通过csdn私信联系。ProcessManage是一个进程保护、进程过滤的小工程。主要亮点是在内核中对操作系统中的用户进行管理。应用层功能包括遍历进程,与内核通信,进行进程保护和隐藏。内核层功能包括Hook NtOpenProcess和NtQuerySystemInformation,实现保护进程和显示当前用户进程的功能。内核用户管理模块可以实现SID与用户名之间的转换。" 标签:"C/C++ 操作系统 进程管理 大作业/课程设计 数据结构" 文件名称列表:"说明.txt、ProcessManage-master" 知识点: 1. C/C++:这是两种广泛使用的编程语言,C语言是一种高效的编程语言,C++是C语言的扩展,增加了面向对象的特性。 2. 数据结构:数据结构是计算机存储、组织数据的方式。常见的数据结构包括数组、链表、栈、队列、树、图等。在这项作业中,可能涉及到进程管理相关的数据结构设计。 3. 进程管理:在操作系统中,进程管理是一个重要的部分。进程是程序的一次执行,是操作系统资源分配和调度的基本单位。进程管理包括进程的创建、销毁、调度、同步、通信等。 4. 进程保护:在操作系统中,进程保护主要是防止恶意进程对其他进程的破坏。这可能包括防止恶意进程窃取信息、破坏数据、恶意占用资源等。 5. 进程过滤:进程过滤是指在操作系统中,根据特定的条件,过滤掉一些进程。这可能包括只显示特定用户的进程,隐藏一些不需要的进程等。 6. 内核编程:内核是操作系统的核心部分,负责管理系统资源,提供系统服务。在内核中进行编程,可以实现对操作系统的深入控制。 7. Hook技术:Hook是一种用于改变或者控制系统行为的技术。在这个作业中,通过Hook NtOpenProcess和NtQuerySystemInformation,实现了对进程的操作。 8. SID与用户名转换:在内核中,并没有用户用户名的概念,相应的是SID(安全标识符)。SID是一个用于标识用户的唯一值。内核用户管理模块可以实现SID与用户名之间的转换。 9. NtOpenProcess和NtQuerySystemInformation:这两个都是Windows NT内核提供的原生API,用于进程的打开和查询系统信息。在这项作业中,通过Hook这两个API,实现了进程的保护和过滤。 10. 项目调试:调试是编程中的重要步骤,通过调试可以发现代码中的错误,并进行修正。项目已调试通过,说明代码已经经过了严格的测试。