- 博客(57)
- 收藏
- 关注
转载 一位女上司写给自己女下属的信
嗨!亲爱的办公室新鲜人小姑娘:就在刚才,在洗手间里,我听出了在隔间里伤心哭泣的人是你。回到我的办公室,面对电脑上瞬间涌入的十多封邮件,我突然发现即使最好的现磨蓝山咖啡也无法让自己平静下来,于是我开始给你写这封信。我知道在你的眼中,我忙碌的要发疯,无情的像个bitch,又无趣的要死,所以我写这封信你一定吃惊之极,但是我写了,因为我并不真的那么忙,也不是bitch,更不无趣。我
2014-05-14 14:58:08 813
原创 深入浅出实例解析linux内核container_of宏
做一件事情首先应该知道它的目的是什么。 container_of的目的:如何通过结构中的某个变量获取结构本身的指针。 总体思路:假想一下,你的结构体中有好几个成员,你如何通过里面的“任一成员”获取整个结构体的首地址呢。container_of的做法就是通过typeof定义一个与“任一成员”同类型的指针变量pvar_a(假设变量名就是pvar_a),并让指针变量pvar_a指向这个“
2014-05-14 14:08:31 909
原创 与一线Linux嵌入式开发工程师的对话
转:与一线Linux嵌入式开发工程师的对话陈工程师一直做Linux的嵌入式开发,作为在开发一线的工程师,他对很多问题的看法可能更切合实际需求,于是,通过邮件,就嵌入式开发方面的问题,请他谈了一下自己的看法: 问:关于嵌入式开发,我们准备给同学们讲解一些入门知识,从你一线开发经验来说,给我们一些建议: 陈工回答: 对于嵌入式Linux入门,如果有
2014-05-07 20:12:08 1045 2
原创 U-BOOT第一阶段程序分析(2)
/* 在MY_JZ2440.h中确实没有定义CONFIG_SKIP_LOWLEVEL_INIT 故执行到此处会跳转到cpu_init_crit 中去初始化SDRAM*/ #ifndef CONFIG_SKIP_LOWLEVEL_INIT adr r0, _start /* 取_start的相对地址*/ ldr r1, _TEXT_BASE /* r1=0x33F80
2014-04-27 21:43:14 631
原创 U-Boot移植之前期分析(下)
接U-Boot移植之前期分析(上): 2. 顶层目录下mkconfig的分析过程 在上面的分析中知道了语句:“@$(MKCONFIG) $(@:_config=) arm arm920t MY_JZ2440 sumsung s3c24x0”对应于执行顶层目录下的mkconfig文件并传递了六个参数 ($0-$6):100ask24x0 arm arm920t
2014-04-27 16:28:36 726
原创 U-BOOT第二阶段程序分析(2)
3. 在下面的程序:/* Pointer is writable since we allocated a register for it */gd = (gd_t*)(_armboot_start - CFG_MALLOC_LEN - sizeof(gd_t));/* compiler optimization barrier needed for GCC >= 3.4 */__
2014-04-24 10:19:06 748
原创 U-BOOT第二阶段程序分析(1)
uboot的第一阶段是用汇编实现的,当然有些情况下还是需要用汇编调用C函数方便些,比如我在移植S32440的uboot的时候由于我需要从nand启动,所以在将uboot这个镜像拷贝到SDRAM中时候就需要初始化好nand flash,然后读取uboot镜像到内存,当第一阶段执行完毕,根据第一阶段最后的分析,程序跳转到了ram中继续执行start_armboot这个C函数。 下面来看看这
2014-04-24 10:12:21 827
原创 linux开发必备的5本秘籍
有关内核的书籍可以用汗牛充栋来形容,不过只有一些经典的神作经住了考验。首先是5本久经考验的神作(个人概括为“2+1+2”,第一个2是指2本全面讲解内核的书,中间的1指1本讲解驱动开发的书,后面的2则指2本有关内核具体子系统的书,你是否想到了某某广告里三个人突然站起单臂齐举高呼“1比1比1”的场景?)。 一、《Linux内核设计与实现》 简称LKD,从入门开始,介
2014-04-23 23:06:04 694
原创 半导体存储设备概述
一、半导体存储设备概述 1. ROM只读存储器 它是一种线路最简单的半导体电路,一次性制造,永久保存,不能修改 2. PROM可编程只读存储器 只允许写入一次,所以也被称为“一次可编程只读存储器(OTP-ROM)” 3. EPROM可擦写可编程只读存储器 有点是可擦写再编程,缺点是擦除需要使用紫外线照射
2014-04-19 10:54:51 1639
原创 linux下svn的使用
1. windows下SVN的安装:这和普通软件安装一样 2. linux下SVN的安装: 对于Fedora的linux可以在/media/目录下挂接*.iso光盘镜像文件,然后进入那个目录进行软件安装:rpm -ivh *.rpm。查看是安装好了SVN:rpm -qa | grep sub (sub是SVN在linux下的名字)
2014-04-17 20:48:45 818
原创 linux下更改ip和mac命令
常用的网络命令:1.设置mac地址ifconfig eth0 hw ether xx:xx:xx:xx:xx:xx2.关闭打开网卡ifconfig eth0 down/up3.设置ip和子网掩码ifconfig eth0 192.168.1.10 netmask 255.255.255.04.为一个网卡设置多个ipifconfig e
2014-04-17 20:36:01 841
原创 ARM汇编学习(1)
1. r0-r3 用作传入函数参数,传出函数返回值。在子程序调用之间,可以将 r0-r3 用于任何用途。被调用函数在返回之前不必恢复 r0-r3。---如果调用函数需要再次使用 r0-r3 的内容,则它必须保留这些内容。 2. r4-r11 被用来存放函数的局部变量。如果被调用函数使用了这些寄存器,它在返回之前必须恢复这些寄存器的值。 3. r12 是内部调用暂时
2014-04-16 22:24:13 700
原创 Linux基本命令
Linux可能天生就是程序员的专属系统,在Linux下几乎所有的操作都可以依靠命令完美的完成,包括代码的编辑、编译和调试,许多Linux的功能在命令行界面运行得要比在图形界面下块,甚至有些使用Linux场合根本就没有图形化的界面二只能使用命令操作。 可以这么说,不会Linux命令行,就不算会Linux。 在Linux中命令有多类,分别放在以下五个目录下:
2014-04-12 10:57:24 736
原创 编译JZ2440开发板的u-boot
以前我在大四的时候准备学习linux,然后就去买了块Cortex-A8架构的开发板,我当时选的是QT210,可惜哪会完全没有基础,根本不能搞定A8强大的数据手册,而且当时连uboot也不知道,呵呵,当时勇气真大,一来就买A8板,后面的前景也让我尝到了苦头,对着一块在当时看来何等高级的板子我压根不知道从何处学习,只会开开机,然后实在无聊了再关机睡觉,呵呵,蛋疼啊。。。。 可是等我稍微
2014-04-03 23:46:37 1520
原创 ARM架构简介&ARMv8架构的未来
一、ARM简介 ARM于1990年11月在英国伦敦成立,ARM是Advanced RISC Machines的缩写,是微处理器行业的一家知名企业,该企业设计了大量廉价、高性能、低功耗的RISC处理器架构相关技术及软件。目前,全世界有几十家著名的半导体公司都使用ARM公司的授权,其中包括TI、Motorola、Philips、IBM、Intel、ST、NEC、LG、ATMEL等。
2014-04-02 22:46:15 3782
原创 uboot bringup
最近在工作中碰到Uboot加载之后无反应的问题, 需要判断是硬件问题还是软件问题。硬件需要检查clock, 电压, boot的硬件配置(上下拉电阻), 以及PCB的质量,软件需要检查的就是DDR参数是否配置正确. 一般正常的bringup步骤如下: 1. 首先板子上电, 按住reset按钮, 连上超级终端, 配置好波特率115200, 在超级终端上选择发送文本文
2014-03-26 21:38:13 3144
转载 软件开发人员的出路
其路一:继续做你这个很有“前途”的职业吧! 偶掰着脚指头仔细数了数,发现还真的有很多朋友在30岁以后还在从事开发工作,我这里说的从事,是指你还需要天天在电脑边上编程序和画电路板,与你手下是否有几个小兵无关,也与你是否头上顶着什么项目经理、主任工程师的帽子无关,只要你还需要亲自开发,你就属于这一类。其中有个年龄最大的朋友是63年的,从事医疗仪器的开发工作,35岁左右还在从事软硬件开发工作的仍有
2014-03-24 23:59:11 824
转载 微店网是真的吗
最近微店很火,我印象中微店应该是在微信开店,今天百度了一下,百度百科出来3个结果,一个是微店APP,一个是微信商城网店,一个是微店网,前面2个做得还不错,可信度较高。后面这个微店网,我不得不来吐槽一下了。 近日,很多人在论坛和QQ群里发一些垃圾链接,宣传口号竟然是:“最近流行什么? 微店!没听说过你可能真的out了,淘客们你们还在忍受tb的虐待吗?新的赚钱机会,免费开店无产品空手
2014-03-24 22:33:14 2738
原创 系统调用与标准函数库(下)
友情提示:本文系接上一片博文——系统调用与标准函数库(上) 2. 系统调用与内核 为了更好地保护了内核,在Linux中,把程序运行空间分为内核空间和用户空间,它们分别运行在不同的级别上。用户进程在通常情况下不允许访问内核数据,也无法使用内核函数,但在有些情况下,就比如本人最近做的GPON项目中,应用程序经常需要与内核打交道,这个时候用户空间的进程需要获得一定的
2014-03-21 00:15:19 1036
原创 系统调用与标准函数库(上)
所谓系统调用其实是操作系统提供给用户程序的一组“特殊”函数接口,可以直接这么去理解,操作系统是一个很大的“函数库”,它给程序员提供了很多可以调用的函数。 系统调用按照功能逻辑大致可分为:进程控制、进程间通信、文件系统控制、系统控制、内存管理、网络管理、socket控制、用户管理。在Linux的不同版本中,提供了两三百个系统调用,用户程序可以通过这组接口获得操作系统(内核)提供的服务
2014-03-19 23:29:35 1128
转载 O2O金融-微信的终极盈利目标
不经意间,腾讯的股价已冲上600港币,市值已略高于1500亿美元。该市值其已超过英特尔(Intel)、思科(Cisco Systems)和惠普(Hewlett-Packard)等美国科技巨擘。 自今年1月1日以来,腾讯控股的股价在香港交易所已涨超过25%,腾讯的股价上升伴随着微信盈利模式的布局。微信自2013年开始探索盈利模式。最初微信试水的是手机游戏与表情商店。这两个应用上线并未引
2014-03-14 23:22:06 1149
转载 京东的未来靠什么?
京东在2014年1月31日向美国证监会递交的招股书中提到京东目前的业务模型。京东目前的主要业务模式是在线自营平台及向第三方提供平台服务。除了这两类主要业务外,京东还会为供应商或合作伙伴业务提供零星附加服务。如:向第三方合作伙伴提供物流、仓储、快递等服务。另外京东还会为合作伙伴或供应商提供不同形式的广告收益。当然,在其他业务收益中,京东也特别提到了互联网金融,并以开发出不同类别的金融产品,如针对供应
2014-03-14 22:06:38 1200
原创 linux下制作静态库与动态库
我们在编写程序的过程过有可能会调用到不是我们自己写的函数,这里我称其为外部的函数,比如在写C语言程序的时候,你会调用到printf函数用于调试输出等,还有可能是这个情况,你自己写的一些通用用途的函数,你在软件项目中有多处地方要调用这些函数,这样的话做成库函数会比较合适,其他进程只需包含这个库和头文件就可以使用这些函数了。库函数分两种,一种是静态库,另一种则是动态库,在程序执行过程中对于静态库,它是
2014-03-14 00:00:52 1432 1
转载 2014年,淘宝客创业者们将纷纷死去?
“今天很残酷,明天更残酷,后天很美好。绝大多数人会死在明天晚上,看不到后天的太阳。”没错,这是马云的原话,如果套用在淘宝客身上,“今天”代表着已经过去的2013年,因为2013年涌入大量淘宝客,导致竞争激烈,所以确实很残酷;“明天”代表着未知的2014年,因为2013年尾声淘宝联盟对淘宝客的大力“乱砍乱杀”及联盟规则的调整,2014年将会是淘宝客有史以来最为艰难的一年,所以会更残酷;“后天
2014-03-09 14:05:29 762
转载 Linus Torvals为何不来中国访问?
2010年9月13日,原本芬兰国籍的Linus Torvalds加入美国国籍,此事确实有点令人不解。但是,LinusTorvalds为何始终不来中国访问?有谁知道其中的原由? 记得,在1996年的秋天,《开放系统世界》正式邀请Linus及其家人访华,对他表示:往返机票、住宿、北大清华讲演、参观故宫长城等事项均由我方负责解决。但是,他没有接受我们的邀请。这是为什么呢?(注
2014-03-09 13:54:29 921
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人