logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Linux内核同步原语之自旋锁(Spin Lock)

在Linux内核代码中,大量使用了自旋锁。自旋锁不会让

Linux时间子系统之时钟源层(Clock Source)

struct clocksource {u64 (*read)(struct clocksource *cs);u64 mask;u32 mult;u32 shift;u64 max_idle_ns;u32 maxadj;#ifdef CONFIG_ARCH_CLOCKSOURCE_DATAstruct arch_clocksource_data archda...

ARM架构下常用GNU汇编程序伪指令介绍(Assembler Directive)

所有的GNU汇编程序伪指令都以句号(.)打头,后面接上伪指令的名字,通常是由小写字母组成。.section.subsection.pushsection.popsection.previous.ascii语法: .ascii "string"....ascii 表示零个或多个(用逗号隔开)字符串,并把每个字符串(结尾不自动加“\0”字符)中的字符放在连续的地址单元。还有一个与.ascii 类似的.

ARM64平台下WFE和SEV相关指令解析

WFEWait For Event.If the Event Register is not set,WFEsuspends execution until one of the following events occurs:An IRQ interrupt, unless masked by the CPSR I-bit.An FIQ interrupt, unless masked by t

ARMv8.1平台下新添加原子操作指令

Large System Extensions (LSE)New atomic instructions to support scalable performance:Instructions for full-word, half-word, and byte operations are available.Most of the following have optional load-a

Linux内核中的READ_ONCE和WRITE_ONCE宏

#define __READ_ONCE(x, check)\({\union { typeof(x) __val; char __c[1]; } __u;\if (check)\__read_once_size(&(x), __u.__c, sizeof(x));\else\__read_once_size_nocheck(&(x), __u.__c, sizeof(x));\sm

Arm通用计时器简介

所有使用Arm处理器的系统中都会包含一个标准化的通用计时器(Generic Timer)框架。这个通用计时器系统提供了一个系统计数器(System Counter)和一组计时器(Timer)。其结构如下图:可以看到,系统计数器是全局唯一的,并且全局共享。而且这个系统计数器还是一直存在的,哪怕系统处于待机状态,所有内核都被关闭了,它仍然可以工作。每一个Arm核都配备一组专门为自己服务的计时器...

Dalvik虚拟机中RegisterMap结构解析

Dalvik虚拟机中每一个方法都由一个称作Method的结构体来表示(包括JNI方法)。在这个结构体中,有一个指向所谓RegisterMap结构的指针:struct Method {ClassObject*clazz;u4accessFlags;u2methodIn

Dalvik虚拟机中DexClassLookup结构解析

在Android系统中,所有的类定义以及具体的代码都是包含在DEX文件中的。但是,一个功能丰富的程序往往都比较复杂,由很多类组成。而每一个类,都由一个所谓类描述符(Class Descriptor)的字符串来唯一标识,两个类不可能有同一个类描述符。类描述符不仅包含类名,还包含了类所在的包名。例如,如果你的类所在包名是“com.trendmicro.mars”,且类名是“Test”的话,那么这个

    共 30 条
  • 1
  • 2
  • 3
  • 请选择