随笔分类 - Linux 基础概念
摘要:1. asm格式 GNU的C编译器使用asm关键字:asm段格式如下: asm ("assembly code"); 一些汇编器使用制表符字符缩进指令以便区分和标签。GNU编译器不需要这样做,单为保持一致使用这样方式。 asm("mov $1, %eax\n\tmov $0, %ebx\n\tint
阅读全文
摘要:ARM汇编语言源程序语句:一般由指令,伪操作,宏指令和伪指令组成. ARM汇编语言的设计基础是汇编伪指令,汇编伪操作和宏指令. 目前常用的ARM编译环境有2种: ARMASM: ARM公司的IDE中使用了CodeWarrior的编译器,绝大多数windows下的开发者都在使用这一环境,完全按照ARM
阅读全文
摘要:介绍 kernel有很多的同步和异步机制,做简单整理,力求能够熟练使用。 1.同步机制 并发:多个执行单元同时被执行 竞态:并发的执行单元对共享资源(硬件资源和软件上的全局变量等)的访问导致竞争状态。 并发与竞态。 假设有2个进程试图同时向一个设备的相同位置写入数据,就会造成数据混乱。处理并发常用的
阅读全文
摘要:1.内核线程 Linux内核可以看作一个服务进程(管理软硬件资源,响应用户进程的种种合理以及不合理的请求)。内核需要多个执行流并行,为了防止可能的阻塞,多线程化是必要的。 内核线程就是内核的分身,一个分身可以处理一件特定事情。Linux内核使用内核线程来将内核分成几个功能模块,像kswapd、kfl
阅读全文
摘要:Linux各种栈 进程栈、 线程栈、 内核栈、 中断栈 1.栈是什么?栈有什么作用? 首先,栈 (stack) 是一种串列形式的 数据结构。这种数据结构的特点是 后入先出 (LIFO, Last In First Out),数据只能在串列的一端 (称为:栈顶 top) 进行 推入 (push) 和
阅读全文

浙公网安备 33010602011771号