0CCh
Home Archives Categories Tags About

使用PCI IDE Controller读写硬盘 – 1

2013-08-26 MiniKernel
上一篇文章中提到了一些IDE基础的知识,并且知道了如何判断IDE的类型。接下来介绍IDE最基本的IO方法——PIO。 PIO是Programmed input/output的缩写,下面是一段wiki上对PIO的介绍:“可编程输入输出(英语:PIO)是CPU与外围设备(...

使用PCI IDE Controller读写硬盘 - 0

2013-08-17 MiniKernel
前言依稀记得我一年半以前曾经写过一篇关于PIO读硬盘数据的文章,当时就提到了读写硬盘操作很复杂,完全可以拿来做一个系列来写。当时也是真有写出一个系列的冲动,不过不巧的是,由于那段时间换工作,新的工作和底层的关系不太大,也就没时间继续读相关文档来把这个系列写下来。我现在还很清楚的记...

使用可编程间隔定时器(Programmable Interval Timer)编写系统时钟

2013-08-04 MiniKernel
很久没有写关于MiniKernel的文章了,这周末看着有点时间,就写一点关于定时器的东西吧。 简单介绍可编程间隔定时器(PIT)芯片(也就是我们常说的8253/8254芯片),他包含了1个振荡器,1个预分频器和3个独立的分频器。每个分频器有一个输出,它是可以让定时器控...

关于JsonCpp的中文编码问题

2013-07-19 Tips
最近工作中用到了jsoncpp来解析json文件。但是遇到了一个这样的问题,如果json代码中有中文,并且用“\u594E\u6258\u65AF”这样的方式表示,那么jsoncpp解析的时候,就会把他转换成UTF-8。到这一步还是OK的,然后我就试图把这段中文写回文件,问题就来...

调试挂死的Explorer

2013-07-05 Debugging
一个同事前几天告诉我说,他的explorer.exe总是挂死,不知道是什么情况导致的。于是我让他下次挂死的时候抓个dump我。抓Dump的工具很多,例如用Win7的TaskMgr,sysinternals的Procexp,或者Windbg本身。不过考虑到explorer挂死了,操...

关于WOW64的一点记录

2013-06-30 NTInternals
1.关于TEB的地址:32位的TEB地址在64位TEB地址加上0x2000的偏移处。验证如下: 0:000> r @$teb $teb=000000007efdb000 0:000:x86> dg @fs P Si Gr Pr Lo Sel Base Li...

EtwLogView —— 实时查看ETW的工具

2013-06-12 Debugging
最近玩XPerf玩的比较多,也经常和cradiator(blog)讨论xperf和etw的话题。上周吃饭的时候就讨论到,貌似没找到一款实时记录查看etw的工具。当时我的观点是,只是看etw的原始记录很难分析出什么东西,必须配合很细工具,例如xperfview。这样才能有效的发挥出...

几个有趣的未文档化Windbg的扩展命令

2013-06-07 Tips
这里使用的是Windbg最新版本,版本号是6.2.9200,可以在Windows8的SDK中获得。 1.eflags 用更加友好的方式显示被设置的标志寄存器 0:000> r efl efl=00000246 0:000> !eflags BIT_1_RE...

关于DLL加载和运行的性能优化总结

2013-05-19 Debugging
本文从三个方面总结了加快DLL加载和运行速度的方法,他们分别是: 使用Rebase和Bind。 按序号的方式导入函数。 使用预读取技术(chromium加载dll时使用了此项)。 首先,讨论一下使用Rebase和Bind,提高DLL加载和运行性能的方法。我们知道,...

gdi_handle_study —— 查看进程GDI资源情况的工具

2013-05-04 NTInternals
gdi_handle_study 是一个用于查看进程中gdi句柄资源的工具。可以用于监控gdi资源是否泄露,已经对gdi资源的使用情况。使用方法非常简单: <blockquote>usage: gdi_handle_study.exe [-c] [-v [-f <...
← Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Next →

© 2026 0CCh. All rights reserved.

Powered by Hexo

GitHub