reactos

caimouse14 小时前
chrome·reactos
Chrome V49 (49.0.2623.112) 在 ReactOS 上运行所需的系统依赖分析日期: 2026-07-19 目标文件: D:\reactos\output-MinGW-i386\Chrome_V49\Chrome.exe 分析方法: objdump PE 导入表解析
caimouse15 小时前
reactos
Windows 内存管理概念详解本文详细解释 Windows 内核(及 ReactOS)中 8 个核心内存管理概念。每个概念包含:定义、数据结构、操作流程、对应的 ReactOS 源文件以及与其他模块的交互关系。
caimouse20 小时前
笔记·学习·reactos
MM 学习笔记 01:miarm.h 核心头文件分析miarm.h(ntoskrnl/mm/ARM3/miarm.h)是整个 MM 子系统的核心头文件。它零外部依赖(无 #include),定义了所有 ARM3 源文件共享的常量、宏、类型和全局变量声明。
caimouse1 天前
chrome·reactos
Chrome V49 SxS 加载问题分析与修复本文详细记录了 Chrome V49(49.0.2623.112)在 ReactOS 上因 Side-by-Side (SxS) 程序集机制不完善导致加载失败的问题,从根因分析到代码修复的完整过程。
caimouse1 天前
笔记·学习·算法·reactos
mm学习笔记_04:VAD树算法与地址空间分配基于 ReactOS ARM3 MM 源码(ntoskrnl/mm/ARM3/vadnode.c)文件位置:d:\reactos\ntoskrnl\mm\ARM3\vadnode.c
caimouse2 天前
reactos
WINLOGON 初始化与作用分析WINLOGON.EXE 是 ReactOS 的用户登录进程,由 SMSS 在启动 CSRSS 之后创建。它负责创建窗口站 WinSta0 和三个桌面(Default/Winlogon/Screen-Saver)、加载 GINA DLL 处理用户身份验证、启动 Shell(explorer.exe)和服务管理器(services.exe),并作为系统安全关注序列(SAS,即 Ctrl+Alt+Del)的处理者。
caimouse2 天前
reactos
ReactOS.exe 安装程序分析reactos.exe 是 ReactOS 的 GUI 第一阶段安装程序,位于 d:\reactos\base\setup\reactos\。它是一个 Win32 属性表(Property Sheet)向导,提供 7 步安装流程(欢迎 → 安装类型 → 设备 → 分区 → 摘要 → 安装进度 → 完成),并调用 setuplib 库完成底层安装操作(分区、格式化、文件复制、注册表更新、引导加载器安装)。
caimouse2 天前
reactos
KPRCB 结构分析与调度流程KPRCB(Kernel Processor Control Block,处理器控制块)是 ReactOS 内核中每个 CPU 核心一个的核心数据结构。它保存了处理器相关的所有调度状态:当前运行的线程、下一个待运行的线程、空闲线程、就绪队列、DPC 队列、定时器状态、电源状态等。调度器的所有操作都围绕 KPRCB 展开。
caimouse3 天前
单片机·嵌入式硬件·reactos
Phase1Initialization 函数分析Phase1Initialization 是内核 Phase 1 初始化的入口线程函数,由 PsInitSystem 在 Phase 0 末尾创建。它运行在一个真正的系统线程上下文中(而非空闲线程),负责初始化完整的 I/O 系统、加载启动驱动、创建系统进程、最终启动会话管理器 (SMSS)。这个函数永不返回。
caimouse5 天前
reactos
ReactOS bootcd.iso 引导到桌面显示过程分析ReactOS bootcd.iso 的启动过程是一个多阶段的复杂流程,涉及从硬件初始化到用户桌面显示的各个环节。整个过程可以分为以下六个主要阶段:
caimouse5 天前
单片机·reactos
ReactOS BootCD 光盘布局完整深度分析ReactOS BootCD 光盘布局完整深度分析ReactOS BootCD 是 ReactOS 官方核心发行镜像,是一款兼容 BIOS/UEFI 双启动的混合式可引导光盘,兼具系统安装与实时桌面演示(Live)双重能力,是 ReactOS 系统部署、功能测试、真机调试的核心介质。
caimouse5 天前
reactos
KiSwitchToBootStack 函数分析KiSwitchToBootStack 是一个内联函数,负责将当前 CPU 的栈从引导加载程序 (FreeLDR) 使用的栈切换到内核自己的初始化栈,并在新栈上预留陷阱帧和 NPX 帧空间,然后跳转到 KiSystemStartupBootStack 执行最终的内核引导初始化。这个函数从不返回。
caimouse5 天前
开发语言·reactos
KiSystemStartupBootStack 函数分析KiSystemStartupBootStack 是 KiSwitchToBootStack 完成栈切换后跳转的目标函数。它在内核自己的启动栈 (P0BootStack) 上运行,负责调用 KiInitializeKernel 初始化内核执行体子系统,然后将当前线程优先级设为 0 以触发调度器切换到 Phase1 初始化线程,最终进入空闲循环。这个函数永不返回。
caimouse8 天前
reactos
ReactOS Development Notes禁止使用clean 整个编译目录,只能针对某个局部目录。实际 VM 名称是 ReactOS-Test-New(不是 ReactOS-Test)。
爱学习的大牛1232 年前
reactos·windows内核学习
通过VirtualBox虚拟机安装和调试编译好的 ReactOS1. 首先创建一个虚拟机配置脚本 `setup_vm.bat`:```batch @echo off :: setup_vm.bat
zhyjhacker2 年前
c++·windows·reactos
ReactOS 4.2 OBJECT_TYPE_INITIALIZERj结构体的实现Windows内核为新对象类型的定义提供了一个全局的OBJECT_TYPE_INITIALIZER 数据结构,作为需要填写和递交的“申请单”:
zhyjhacker2 年前
linux·c++·嵌入式硬件·reactos
3.1.1ReactOS系统中搜索给定长度的空间地址区间函数的实现//搜索给定长度的空间地址区间 MmFindGap(); PMADDRESS_SPACE AddressSpace,//该进程用户空间 ULONG_PTR Length,//寻找的空间间隔大小 ULONG_PTR Granularity,//粒度位,表明空间起点的对齐要求,注意是起点地址 ULONG_PTR TopDown); 函数的定义: PVOID NTAPI MmFindGap( PMADDRESS_SPACE AddressSpace, ULONG_PTR Length, ULONG_PTR Gr
zhyjhacker2 年前
c++·windows·内核·reactos
memset()函数的实现_CRTIMP void* __cdecl memset (void*, int, size_t); memset()函数的实现
zhyjhacker2 年前
java·前端·c++·windows·算法·内核·reactos
3.1.1 ReactOS系统中二叉树创建一个MEMORY_AREA节点二叉树中创建一个MEMORY_AREA节点: MmCreateMemoryArea() 参数AddressSpace是MADDRESS SPACE结构指针,所指向的数据结构代表着一个进程的用 户空间。 参数BaseAddress是个指针,用来给定和返回内存区块的基地址
zhyjhacker2 年前
c++·windows·算法·内核·reactos
2.6.ReactOS系统中从内核中发起系统调用2.6.ReactOS系统中从内核中发起系统调用上面我们已经可以看到用户空间(R3)进行系统调用的全过程即两种方法的具体实现。