标签:寄存器

深入剖析 JavaScriptCore
综合技术

深入剖析 JavaScriptCore

04月21日

最近开始涉及 JS 的解析和处理工作,所以专门研究了下这块。特别是动态类型的处理以及不同引擎对于平台无关的字节码的设计和处理会有很大的帮助。 JavaScriptCore 介绍 ...
ESP技巧:教你如何解包可执行文件
综合技术

ESP技巧:教你如何解包可执行文件

04月21日

恶意软件开发者会使用各种方法绕过反病毒产品,他们可以对字符串进行混淆处理,或者使用其他软件的证书来对恶意软件进行签名。其中最常用的一种方法就是利用封装器来对恶意软件进行压缩,...
x86环境病毒分析的反汇编基础知识
综合技术

x86环境病毒分析的反汇编基础知识

04月20日

本文是一篇对x86环境下进行病毒分析所需的基础反汇编知识的简单总结,更深层的知识还需要实战经验。 x86体系结构 大部分现代计算机体系结构(包括x86)在内部实现上遵循冯&midd...
综合技术

Linux64位程序中的漏洞利用

04月15日

之前在 栈溢出漏洞的利用和缓解 中介绍了栈溢出漏洞和一些常见的漏洞缓解 技术的原理和绕过方法, 不过当时主要针对32位程序(ELF32). 秉承着能用就不改的态度, IPv...
综合技术

计算机体系 – 栈与堆

02月19日

继上篇讲述了虚拟存储器和进程以后,程序终于乖乖“开始”运行了。此篇就来聊聊程序如何“持续”运行,继续来看看what’s beyond the scene。 栈 作为一名有政治觉悟的...
汇编语言入门教程
综合技术

汇编语言入门教程

01月21日

学习编程其实就是学高级语言,即那些为人类设计的计算机语言。 但是,计算机不理解高级语言,必须通过编译器转成二进制代码,才能运行。学会高级语言,并不等于理解计算机实际的运行步骤。 ...
移动开发

Android Ptrace Inject

01月09日

之前介绍了Android平台上3种常见的hook方法,而hook的前提是进程注入,通过进程注入我们可以将模块或代码注入到目标进程中以便对其空间内的数据进行操作,本篇文章介绍基于 ...
移动开发

(译)窥探Blocks(2)

11月09日

本文翻译自Matt Galloway的博客之前的文章(译)窥探Blocks(1)我们已经了解了block的内部原理,以及编译器如何处理它。本文我将讨论一下非常量的bloc...
后端存储

ARM中断处理过程

09月07日

以 s3c2440 ARM9 核为例: 一:s3c2440 ARM处理器特性:1、S3C2440支持 60 个中断源,含子中断源;2、ARM...
综合技术

Go Assembly 学习笔记

09月04日

最近升级 go1.9,发现一个获取 goroutine id 的依赖没有支持1.9,于是手动写了一个,顺便学习一下 go assembly。希望你看完这篇文章后,对go汇编有一定的...
综合技术

os_task.c

09月02日

定位到uCOS-II/Source/os_task.c,该文件是任务的相关操作: 1. 修改任务优先级函数OSTaskChangePrio() OSTaskChangePrio()...
了解 V8 的字节码「译」
综合技术

了解 V8 的字节码「译」

08月19日

V8 是 Google 开发的开源 JavaScript 引擎。 Chrome、Node.js和许多其他应用程序都在使用 V8。本文介绍了 V8 的字节码格式—— 如果你了解关于字...
综合编程

MemoryBarrier浅析

08月01日

这段时间看底层代码经常看到volatile这个类型修饰符,本身这个修饰符作用比较简单,但今天在看Unreal源码ThreadingBase底层线程池部分看到了volatile配合多...
综合编程

浮点运算潜在的结果不一致问题

07月25日

昨天阿楠发现了项目中的一个 bug ,是因为浮点运算的前后不一致导致的。明明是完全相同的 C 代码,参数也严格一致,但是计算出了不相同的结果。我对这个现象非常感兴趣,仔细研究了一下...
iOS开发同学的arm64汇编入门
后端存储

iOS开发同学的arm64汇编入门

07月24日

在定位某些crash问题的时候,有时候遇到一些问题很诡异。有时候挂在了系统库里面。这个时候定位crash问题往往是比较头疼的。那么这个时候学会一些汇编知识,利用汇编调试技巧进行调试...

专业 x 专注 x 聚合 x 分享 CC BY-NC-SA 4.0

使用声明 | 英豪名录