<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
  <channel>
    <title>McSafe软件安全论坛 - 编程技术</title>
    <link>http://www.mcsafenet.com/forum.php?mod=forumdisplay&amp;fid=32</link>
    <description>Latest 20 threads of 编程技术</description>
    <copyright>Copyright(C) McSafe软件安全论坛</copyright>
    <generator>Discuz! Board by Comsenz Inc.</generator>
    <lastBuildDate>Sun, 31 May 2026 20:22:29 +0000</lastBuildDate>
    <ttl>60</ttl>
    <image>
      <url>http://www.mcsafenet.com/static/image/common/logo_88_31.gif</url>
      <title>McSafe软件安全论坛</title>
      <link>http://www.mcsafenet.com/</link>
    </image>
    <item>
      <title>使用 ETW 挂钩上下文切换</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=237</link>
      <description><![CDATA[事件跟踪用于 Windows（Event Tracing for Windows，简称 ETW）是一项内核机制，旨在记录系统中发生的某些特定活动。尽管其描述看似平淡无奇，但 ETW 却能成为宝贵的信息来源，对于反作弊程序和其他驱动程序而言，它也是一个非常有趣的钩取点（hook point）。

第一 ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Fri, 10 Oct 2025 09:04:06 +0000</pubDate>
    </item>
    <item>
      <title>趣探另一款符合 PatchGuard 规范的钩子技术</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=236</link>
      <description><![CDATA[概述
    在本文中，我们将介绍一种有趣的替代方案，用以替代备受推崇的由尼克·彼得森（Nick Peterson）开发的 InfinityHook。在微软发布并随后修补了 EtwpGetCycleCount 目标函数（且未对原作者进行任何致谢）之后，艾丹·库里（Aidan Khoury）发现了这一替代方法。该 ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Fri, 10 Oct 2025 03:37:26 +0000</pubDate>
    </item>
    <item>
      <title>NTFS 重解析点</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=233</link>
      <description><![CDATA[嗨，哈勃（Habr，俄罗斯知名技术社区）的读者们。我在这里为大家准备了一份关于NTFS重解析点（以下简称RP）的小指南。这篇文章适合那些刚开始涉足Windows内核驱动程序开发的人。在开头部分，我会结合实例讲解理论，随后会布置一个有趣的任务供大家解决。

    重解 ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Fri, 12 Sep 2025 06:54:42 +0000</pubDate>
    </item>
    <item>
      <title>Windows平台上的eBPF技术简介</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=232</link>
      <description><![CDATA[在Linux领域，eBPF技术已存在多年。其目的是允许编写在Linux内核中运行的程序。然而，与标准内核模块不同，eBPF运行在一个受限的环境中，其应用程序接口（API）受到限制，以免对内核造成损害。此外，每个eBPF程序在获准执行前都必须经过验证，以确保其安全性（如内 ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Thu, 11 Sep 2025 05:30:03 +0000</pubDate>
    </item>
    <item>
      <title>Windows 镜像处理与 Glazier 入门（第一部分）</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=231</link>
      <description><![CDATA[什么是Glazier？

根据https://github.com/google/glazier#glazier 和 https://github.com/google/glazier#why-glazier 的介绍：

[*]Glazier是谷歌开发的一款用于自动化部署Windows操作系统的工具。
[*]Glazier的创建遵循了以下三个核心原则：基于文本与代码驱动、可扩 ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Tue, 09 Sep 2025 07:05:46 +0000</pubDate>
    </item>
    <item>
      <title>I/O虚拟化 101：虚拟化技术概述 与 I/O 虚拟化（IOV）详解</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=202</link>
      <description><![CDATA[序言
    虚拟化技术是实现云计算的基石，虚拟化技术主要由三项关键技术构成：CPU 虚拟化、内存虚拟化和 I/O 虚拟化。I/O 虚拟化作为计算、网络与存储的技术交织点，其重要性与复杂性不言而喻。

    I/O 外设资源是有限的，通过 I/O 虚拟化（IOV：I/O Virtualization） ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Tue, 17 Jun 2025 09:54:24 +0000</pubDate>
    </item>
    <item>
      <title>趣探 AppContainers</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=178</link>
      <description><![CDATA[应用容器（AppContainers）通常是用于运行通用 Windows 平台（UWP）进程（也被称为 Metro、应用商店或现代应用进程等）的沙箱环境。在应用容器内运行的进程具有低完整性级别（Integrity Level），这意味着它几乎无法访问任何资源，因为大多数对象（例如文件）的默认 ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Tue, 13 May 2025 04:13:33 +0000</pubDate>
    </item>
    <item>
      <title>Go语言指南：面向C++程序员的迁移手册</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=154</link>
      <description><![CDATA[Go语言是一种旨在成为通用系统级编程的语言，类似于C++。本文为有经验的C++开发者梳理Go语言的关键差异，重点讨论差异而非相似性。    需首要明确的是，精通这两种语言需要截然不同的思维模式。最显著的区别在于：C++的对象模型基于类及其继承体系，而Go的对象模型 ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Wed, 09 Apr 2025 07:18:10 +0000</pubDate>
    </item>
    <item>
      <title>窗口工作站和桌面</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=147</link>
      <description><![CDATA[之前，我在博客中探讨了Windows 10/11中面向用户公开的虚拟桌面功能与Sysinternals的Desktops工具之间的区别。在这篇文章中，我想进一步阐述窗口工作站、桌面和窗口的相关知识。在继续阅读之前，我假设您已经阅读了之前的那篇博客文章。    我们了解到，窗口工作站 ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Tue, 11 Mar 2025 05:46:25 +0000</pubDate>
    </item>
    <item>
      <title>Windows 10虚拟桌面 vs. Sysinternals虚拟桌面</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=146</link>
      <description><![CDATA[Windows 10 向用户展示的新功能之一是对额外“虚拟桌面”的支持。现在，用户可以创建额外的界面来使用窗口。这个想法其实并不新颖——在Linux世界中已经存在多年（例如KDE、Gnome等桌面环境），用户可以使用4个虚拟桌面。这个想法的初衷是为了避免杂乱无章，例如， ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Mon, 10 Mar 2025 08:17:54 +0000</pubDate>
    </item>
    <item>
      <title>UI自动化的威力</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=145</link>
      <description><![CDATA[如果你需要获取某个浏览器中所有打开的标签页的列表，该怎么做呢？在（非常）久远的时代，你可能会假设每个标签页都是自己的一个窗口，因此你可以使用例如 FindWindow 这样的函数来找到一个主浏览器窗口，然后通过EnumChildWindows 枚举子窗口来定位标签页。然而， ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Mon, 10 Mar 2025 06:53:58 +0000</pubDate>
    </item>
    <item>
      <title>PC桌面客户端GUI开发漫谈</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=114</link>
      <description><![CDATA[本篇目录1. 桌面GUI开发分类概述    1.1 Windows    1.2 Mac    1.3 Linux    1.4 跨平台--基于原生或自有引擎(传统 C++)    1.5 跨平台--基于Web技术(以浏览器为核心)
    1.6 其它语言各自的GUI开发库
    1.7 大一统界面开发方案（含桌面端和移动端）2. Windows API ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Mon, 18 Nov 2024 02:42:34 +0000</pubDate>
    </item>
    <item>
      <title>USB设备类代码表</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=107</link>
      <description><![CDATA[【USB 设备类】
USB 设备类是具有类似特性并执行常见功能的设备类别。 USB-IF 定义了这些类及其规格。 每个设备类都由 USB-IF 批准的类、子类和协议代码标识，所有这些代码都由固件中设备描述符中的 IHV 提供。 Microsoft 为其中几个设备类（称为 USB 设备类驱动程序） ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Tue, 05 Nov 2024 08:18:43 +0000</pubDate>
    </item>
    <item>
      <title>CPU暗藏的未公开的指令</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=70</link>
      <description><![CDATA[我们知道，我们平时编程写的高级语言，是经过编译器编译以后，变成了CPU可以执行的机器指令：



    而CPU能支持的指令，都在它的指令集里面了。    很久以来，我都在思考一个问题：    CPU有没有未公开的指令？    或者说：    CPU有没有隐藏的指令？    为什么会 ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Tue, 08 Oct 2024 03:06:14 +0000</pubDate>
    </item>
    <item>
      <title>WrapFS 简介</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=65</link>
      <description><![CDATA[初识 WrapFSWrapFS 是一种堆栈式文件系统，堆栈式文件系统的一个基本功能就是把操作和参数转换成底层文件系统的操作和参数。这就意味着我们会在 WrapFS 层上创建一个文件对象后会在底层文件对应着创建一个对象，要说明的是，WrapFS 层的这个文件对象只保存在内存里面， ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Sun, 06 Oct 2024 16:44:27 +0000</pubDate>
    </item>
    <item>
      <title>即使是C程序员也会喜欢的五个C++特性</title>
      <link>http://www.mcsafenet.com/forum.php?mod=viewthread&amp;tid=21</link>
      <description><![CDATA[我一直认为C++很糟糕，而且糟糕透顶。过去20年来，我一直非常直言不讳地表达这种观点，几乎所有参与Windows驱动开发并略微阅读过NTDEV的人都听过我的论述。
    我并非孤军奋战。事实上，像Mr. Penguin Pants和Elon Musk这样的人物也赞同我的观点。Ken Thompson和Ro ...]]></description>
      <category>编程技术</category>
      <author>McSafe</author>
      <pubDate>Mon, 19 Aug 2024 11:11:14 +0000</pubDate>
    </item>
  </channel>
</rss>