自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Think

Keep marching, Don't settle —— 把自己带到离梦想最近的地方!

  • 博客(14)
  • 资源 (4)
  • 收藏
  • 关注

原创 Bootloader

Bootloader是在操作系统内核或用户应用程序运行之前的一段小程序,用来初始化硬件设备、建立内存空间的映射图,从而将系统环境带到一个合适的状态,以便为最终调用准备好环境。Bootloader不属于操作系统内核,采用汇编语言编写,因此针对不同的CPU体系结构,这一部分代码不具有可移植性。在移植操作系统时,这部分代码必须加以改写,Bootloader不但依赖于CPU的体系结构,而且依赖于嵌入式系统

2011-11-17 15:47:23 1179

原创 嵌入式硬件平台接口开发

1、基于ARM的socFS2410平台主要资源:中央处理器、外部存储器、两个五线异步串行口(波特率达115200bps)、网络接口、USB接口、红外通讯口、音频接口、存储接口、LCD和触摸屏接口2、GPIO(通用输入/输出)接口S3C2410包含GPA GPB ...GPH端口,大部分I/O可以被配置为输入、输出模式,且可以选择是否内部上拉。3、UART接口在通信领域内,有两种

2011-11-11 16:44:34 919

原创 ARM简约介绍

ARM有七个基本工作模式:1、User:非特权模式,大部分任务执行在这种模式2、FIQ:当一个高优先级中断产生时将会进入这种模式3、IRQ:当一个低优先级中断产生时将会进入这种模式4、Supervisor:当复位或软中断指令执行时将会进入这种模式5、Abort:当存取异常时将会进入这种模式6、Undef:当执行未定义指令时会进入这种模式7、System:使用和User模

2011-11-11 10:20:43 591

原创 linux网络编程

OSI模型:物理层、数据链路层、网络层、传输层、回话层、表示层、应用层。TCP/IP协议:网络接口与物理层、网络层、传输层、应用层。TCP:面向连接、可靠的字节流通信UDP:无连接、不可靠的数据报通信 套接字socket:位于应用层与传输层之间、一个编程接口,一种特殊的文件描述符。分类:流式套接字(SOCK_STREAM)、数据报套接字(SOCK_DGRAM)、原始套接字(

2011-11-10 17:31:31 736

原创 进程间通信

传统的进程间通信方式:无名管道(pipe)、有名管道(fifo)和信号(signal)System V IPC对象:共享内存(share memory)、消息队列(message queue)和信号灯(semaphore)BSD:套接字(socket)1、无名管道        无名管道只能用于具有亲缘关系的进程之间的通信。管道是基于文件描述符的通信方式,当一个管道建立时(int

2011-11-10 15:56:26 687

原创 线程

在同一个进程中的创建的线程共享该进程的地址空间,使用多线程大大提高了任务切换的效率。 多线程编程       1、创建线程:pthread_create                            2、等待指定线程结束:pthread_join                             3、退出一个线程:pthread_exit

2011-11-10 14:18:22 379

原创 进程

进程是一个程序的一次执行过程。其中进程(process)包括正文段、用户数据段、系统数据段(临时堆栈、所有寄存器之类),而程序(program)则只包含正文段跟用户数据段。         PID唯一标识一个进程。(PPID父进程号,不是唯一)         进程分类:交互进程(shell控制和运行)、批处理进程(不属于终端,被提交到队列中)、守护进程(后台)         运行状

2011-11-10 11:40:19 438

原创 静态库与动态库

库,简单来说就是一种可执行代码然而又不可自己执行的二进制形式。           linux下库有两种:静态库和动态库(共享库),二者不同点在于代码被载入的时刻不同。静态库在程序编译时会被连接到目标代码中,因此体积比较大。而动态库则在程序运行是才被载入,体积小。顺便提一下编译过程:预处理->编译->汇编->链接->生成可执行文件           链接静态库:1、用ar命令将.o转化成

2011-11-10 11:02:37 446

原创 I/O

I/O分为标准I/O和文件I/O。        文件可分类为:b(block 块设备)c(char 字符设备)d(direct 目录)—(regular 常规文件)l(链接)s(socket 套接口)p(pipe 有名管道)标准I/O:         依赖C库,采用文件指针FILE *fp(流) ,开辟缓冲区,一次多读,下次访问快(高级磁盘IO)。         标准I/O预

2011-11-09 16:13:26 436

原创 Android进程间通信(IPC)机制Binder

Android基于linux内核,然而却没有才有unix丰富的进程间通信,而是基于OpenBinder来实现。          在Binder机制中,由Client、Server、Service Manager和Binder驱动程序四个组件组成,其中Client、Server和Service Manager运行在用户空间,Binder驱动程序运行内核空间。Service Manager和Bi

2011-11-09 11:37:52 966

原创 上层APP调用底层硬件驱动过程解析

APP应用程序->应用框架层->硬件抽象层-> 硬件驱动程序一、硬件驱动层            进入kernel/drivers文件夹中,创建一文件夹,放入驱动程序。包括头文件,C文件,Makefile,Kconfig。同时对drivers下的Makefile跟Kconfig进行相应的添加,这样配置编译选项后,即可编译。编译完后,可以在/dev,/proc,/sys/class中得到相应

2011-11-09 10:53:07 10485

原创 通过arp实现输入ip地址输出mac地址

当一台手机连上wifi热点时,想通过ip知道对方的mac地址,之前网络上找了篇通过netbios实现通过ip寻找mac地址,然而该方法只局限于windows系统,后来了解到通过arp协议可以实现这个功能。于是就有如下的代码:ipmac.c:#include #include #include #include #include #include #include

2011-11-08 16:03:18 3368

原创 boa移植到android平台上

一 、到http://www.boa.org/上下载bor服务器,本人用的是0.94.13版本。二、将其解压到android源码根目录下的external/boa中三、在boa文件夹下创建Android.mk文件,具体内容如下ifeq ($(TARGET_ARCH),arm)LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)

2011-11-08 15:28:49 2721 2

原创 android长按power键自动关机定制

android的系统不能像Nokia一样,长按住power键会自动关机,还得自己去选择关机选项,然后再确定才关机。这样有时会多些不方便,于是我对源代码进行了小改动,使得长按power键弹出选项框后继续按住三秒即可自动关机。具体步骤如下:一、打开android源码中的frameworks\base\policy\src\com\android\internal\policy\impl\Phone

2011-11-08 14:51:20 6258 3

boa移植到android平台

boa移植到android平台,本人已在开发板上实验过,可用产品。。。。

2011-11-08

LINUX内核源代码情景分析

LINUX内核源代码情景分析 包含上下册

2011-11-08

两天学会java教程ppt

简约而不简单,让你快速全面学会java

2011-11-08

通过ip获取mac地址(arp)

通过arp协议,输入ip输出mac地址

2011-11-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除