我是南京做嵌入式的。之前搞过一年的PC平台Linux内核开发,Linux内核态的只要不是很复杂的BUG还是能修复的。一年的Linux用户态软件开发。然后最近搞了两年ARM嵌入式开发。做的CM3核芯片相关。
然后我最近找嵌入式工作,我就发现个特点。我发现南京真是除了华为,三星,趋势等很少的大公司外,其他公司给钱都很一般,要求标准倒是很高的。而且很多公司都是搞外包的。
我找嵌入式相关工作,...
分类:
其他好文 时间:
2014-09-01 21:14:53
阅读次数:
221
在nt平台下,普通应用程序运行在ring3下,操作系统运行于ring0。如果在程序中需要执行一些特权指令的话,程序必须转入到ring0。由于用户程序执行特权指令可能会破坏系统资源,故出于保护和稳定的目的,操作系统通过“门”机制向用户态程序提供必要的服务。在x86种有四种门:中断门、陷阱门、调用门、任...
分类:
其他好文 时间:
2014-09-01 19:21:03
阅读次数:
177
Linux 0.11系统中共使用了四种堆栈一、系统引导初始化临时使用的堆栈。二、进入保护模式后提供内核程序始化使用的堆栈,该堆栈也是后来任务0使用的用户态堆栈。三、每个任务通过系统调用,执行内核程序时使用的堆栈,称之为任务的内核态堆栈,每个任务都有自己独立的内核态堆栈。四、任务在用户态执行的堆栈,位...
分类:
系统相关 时间:
2014-09-01 17:26:33
阅读次数:
295
在Linux中,休眠主要分三个主要的步骤:(1)冻结用户态进程和内核态任务;(2)调用注册的设备的suspend的回调函数;(3)按照注册顺序休眠核心设备和使CPU进入休眠态。 冻结进程是内核把进程列表中所有的进程的状态都设置为停止,并且保存下所有进程的上下文。当这些进程被解冻的时候,他们是不知道自...
分类:
系统相关 时间:
2014-08-25 22:41:14
阅读次数:
443
MINIX3 中断机制源码分析 下面我们来探讨下 MINIX 中断处理函数的具体处理流程: 由前面的章节知道,MINIX 的架构是标准的微内核结构,除了时钟中断处理程 序可以直接在内核态进行,其他的都只能从用户态,用户态像内核态发送消息。 假设我们是一个内核设计者,怎么能够将这种机制实现呢?我们会在...
分类:
其他好文 时间:
2014-08-22 15:57:39
阅读次数:
281
基础篇:操作系统、计算机网络、设计模式一:操作系统1. 进程的有哪几种状态,状态转换图,及导致转换的事件。2. 进程与线程的区别。3. 进程通信的几种方式。4. 线程同步几种方式。(一定要会写生产者、消费者问题,完全消化理解)5. 线程的实现方式. (也就是用户线程与内核线程的区别)6. 用户态和核...
分类:
系统相关 时间:
2014-08-21 18:53:14
阅读次数:
347
翻译说明:这是一个日本人写的用户态下的函数tracer, 我们知道系统调用可以用strace, 库调用可以使用ltrace, 但是linux下竟然没有一个比较有名的用户程序的tracer, 这真是比较奇怪。目前这个工具只支持x86架构,arm之类的嵌入式环境不支持。以后有时候自己写一个tracer。
原文来自: http://binary.nahi.to/hogetrace/
trac...
分类:
其他好文 时间:
2014-08-12 00:45:23
阅读次数:
500
简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执...
分类:
系统相关 时间:
2014-08-10 21:11:10
阅读次数:
395
操作系统:1. 进程的有哪几种状态,状态转换图,及导致转换的事件。2. 进程与线程的区别。3. 进程通信的几种方式。4. 线程同步几种方式。(一定要会写生产者、消费者问题,完全消化理解)5. 线程的实现方式. (也就是用户线程与内核线程的区别)6. 用户态和核心态的区别。7. 用户栈和内核栈的区别。...
分类:
其他好文 时间:
2014-08-10 12:40:50
阅读次数:
278
用户态对accept的标准使用方法:if ((client_fd = accept(sockfd, (struct sockaddr *)&remote_addr, &sin_size)) == -1) { //accept()函数让server接收客户的连接请求 perror("acce...
分类:
其他好文 时间:
2014-08-09 18:40:18
阅读次数:
323