Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

Chrome源码剖析

Chrome源码剖析

原著:duguguiyu。整理:July。时间:二零一一年四月二日。出处:http://blog.csdn.net/v_JULY_v。说明:此Chrome源码剖析很大一部分编辑整理自此博客:http://flyvenus.net/。我对写原创文章的作者向来是以最大的尊重的。近期想好好研究和学习下Chrome源码,正巧看到了此duguguiyu兄台的源码剖析,处于学习的目的,就不客气的根据他的博客整理了此文。若有诸多冒犯之处,还望海涵。-----------...
ARM-Linux下ZLG7290 I2C驱动程序的编写

ARM-Linux下ZLG7290 I2C驱动程序的编写

项目中用到ZLG7260按键数码显示芯片与at91sam9260系列ARM9处理器连接,ZLG7290通过I2C接口与ARM9的TWI I2C(PA23:SDA数据线 ;PA24:SCL时钟线)接口相连连接,另外还有一个中断信号引脚(INT)与ARM的一个GPIO引脚(PB30)连接,具体连接电路由于公司需要技术保密不贴出来了。本周通过学习Linux I2C体系架构,完成这一驱动程序,下面将一些开发心得贴出来和大家分享。 首先来看什么是I2CI2C (In...
利用bochs调试引导程序和Linux内核

利用bochs调试引导程序和Linux内核

今天使用bochs2.4.5调试《Linux内核完全注释》上的一个简单的启动代码例子,bochs是一个模拟Intelx86指令系统很好的软件系统,可以从网上免费下载,下文就如何进行调试做说明。 先来看到的是《Linux内核完全注释》中的一个例子:在Ubuntu10.04中编写代码后保存为boot.s文件.globlbegtext,begdata,begbss,endtext,enddata,endbss!全局标识符,供ld86链接使用 .text!正文段...
u-boot的通用目录是怎么做到与平台无关的

u-boot的通用目录是怎么做到与平台无关的

include/configs/ARMEasy6410.h 这个头文件中主要定义了两类变量。一类是选项,前缀是CONFIG_,用来选择处理器、设备接口、命令、属性等,主要用来 决定是否编译某些文件或者函数。另一类是参数,前缀是CFG_,用来定义总线频率、串口波特率、Flash地址等参数。这些常数参量主要用来支持通用目录中的代码,定义板子资源参数。这两类宏定义对u-boot的移植性非常关键,比如drives/ dm9000x.c,对dm9000而言,很多操作...
Python下ice调用遭遇MemoryLimitException

Python下ice调用遭遇MemoryLimitException

使用python调用ice接口,传入参数大于1M的时候,报ICE::MemoryLimitException。查阅很多资料,发现C++调用ICE的时候有配置文件ice.cfg 里边可以设置ice的参数MessageSizeMax。但是我的IcePy 没有config文件夹,也没有ice.cfg这项。为此经历了一番折腾。终于找到方法如下在初始化Ice的时候,传入配置项如下:communicator = Ice.initialize(["--Ice.Messa...
Ubuntu 10.10下嵌入式QT开发环境搭建手记

Ubuntu 10.10下嵌入式QT开发环境搭建手记

【前言:由于我也是第一次搭建这个环境,整个所用时间不止一周,以及以前用java觉得还要配置环境变量,好麻烦,但那不过是几分钟的事,后来手动配置php,最快半天,一般我都要用一天的时间,个人比较笨;现在配置个嵌入式qt环境的时间不止一周的时间,真的是整个人都被整疯了,而且到此刻,我还不确定我的环境是否已经配置的完全正确,以下是一些环境搭建过程中碰到的问题,稍微整理了一下,建议在配环境的时候,多看几篇比较完整的环境搭建的文章,准备好前期工作(很多与编译有关的软...
ARM Linux静态映射分析

ARM Linux静态映射分析

在华清远见上课过程中,发现静态映射方面初学者比较难于掌握和理解,下面分析一下静态映射机制的原理并通过GPIO和USB、LCD等的静态映射作为例子来说明如何通过这种静态映射的方式访问外设资源。内核提供了一个重要的结构体struct machine_desc ,这个结构体在内核移植中起到相当重要的作用,内核通过machine_desc结构体来控制系统体系架构相关部分的初始化。machine_desc结构体的成员包含了体系架构相关部分的几个最重要的初始化函数,包...
最完整的Android源码获取方法及环境建立

最完整的Android源码获取方法及环境建立

网上看了前人的那么多关于Android源码获取方法及环境建立,门路可真多,今天我就总结一下个人学习经验,算是比较完整的了。一、获取方法:1、直接找到人家已经下载好的android源码,如cupcake.tar.gz(估计有1G多,如果有必要再用repo sync更新)2、自己动手从google那里下载(第一种方法往往找不到,因为我们是个体户) 二、必要硬条件:1、在VM虚拟机下安装好Ubuntu(ubuntu8.04以上版本),而且最好分配30G空间给它(...
Android版本及版本代号对照

Android版本及版本代号对照

Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。Android版本与版本代号搞晕了我良久,今天网上找了答案,记下来先Android 1.5:Cupcake(杯子蛋糕) Android 1.6:Donut(甜甜圈) Android 2.0 / 2.1:éclair(闪电泡芙) ...
I/O操作上设置超时之alarm闹钟法

I/O操作上设置超时之alarm闹钟法

环境是Linux Ubuntu系统调用 alarm,它在指定超时期满时产生SIGALRM信号。这个方法涉及信号处理。用法: alarm(time):TIME就是指定的超时期;如果之前设有超时期,alarm()会返回其时期的剩余值; signal(SIGALARM, connect_alarm):指定connect_alarm函数是时钟期满时的处理函数;函数退出前要关闭时钟: Sigfunc *sigfunc; sigfunc=signal(SIGALARM...
Linux 程序信号处理

Linux 程序信号处理

Linux下的信号名以SIG开头,如:SIGSEGV 段错误、SIGTERM 退出 等等,它们都在头文件<signal.h>中定义信号名和对应的值,并且信号的值都大于0。产生信号的原因:1.硬件异常:除零出错、无效内存的引用,如SIGSEGV表示进程访问了无效的内存地址2.软件发送的信号:如SIGPIPE表示进程尝试写入到没有阅读的管道(或socket)时,SIGALRM进程计时器到期3.用户按下某些终端按键:如按下Ctrl+C,产生SIGIN...
用shell脚本来做fdisk

用shell脚本来做fdisk

对于多块硬盘做fdisk是个很漫长的工作,很想用个脚本来实现,发现早就有人讨论过做fdisk的脚本。于是拿来用了一下发现效果不错:#!/bin/bash fdisk$1<<EOF d#删除已有分区 n#创建主分区 p 11#分区起始扇区 #分区结束扇区,输入空格的话,就表示使用默认值,也就是整个磁盘都作为一个分区 t#设置分区label,默认情况下是Linux, 83#将label设置为Linux w EOF 但是这种方法的问题也很严重,就是无...
<< 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 >>