openwrt
文章平均质量分 91
奔跑的路
这个作者很懒,什么都没留下…
展开
-
Openwrt学习笔记(一)——系统架构
下表是OpenWrt系统架构和其他系统架构的对比: Desktop DistributionsOpenWrtAndroidReplicantmer-basedTypical main memory size128 MiB to 16 GiB (or more)32 MiB to 512 MiB1原创 2016-12-11 12:18:35 · 12892 阅读 · 1 评论 -
Openwrt学习笔记(二)——Flash Layout and file system
在大多数系统中,闪存不像RAM一样可以直接执行指令,所以闪存中的数据和指令需要拷贝到RAM中执行,比如存放在flash中的kernel需要bootload的帮忙,将kernel拷贝到RAM里面才能运行。大多数router都是没有硬盘的,它使用闪存来完成相应的存储功能(包括存储固件以及系统数据),这种非易失性的闪存可以避免掉电丢失的问题。我们常接触的闪存主要有两种:NOR flash 和原创 2017-02-25 18:30:30 · 21143 阅读 · 2 评论 -
Openwrt学习笔记(三)——内核启动
本来想整理一下linux内核启动的大致过程,后来网上找到了朱老师的关于这方面的付费视频课程,讲的挺好,所以这里就自己偷偷懒,直接将笔记贴上来了,希望没影响到人家的知识产权http://edu.51cto.com/lesson/id-87648.html第一部分、章节目录2.16.1.做好内核分析的准备工作2.16.2.head.S文件分析12.16.3.内核启动的汇转载 2017-02-28 22:18:06 · 5081 阅读 · 1 评论 -
Openwrt学习笔记(四)——系统开机启动 (续)
下面是英文原版,如果访问慢,也可以直接查看这里https://wiki.openwrt.org/doc/techref/init.detail.ccInit (User space boot) reference for Chaos Calmer: procdAnalysis of how the user space part of the boot sequ转载 2017-03-05 23:22:12 · 4918 阅读 · 0 评论 -
Openwrt学习笔记(四)——系统开机启动
1. 内核启动bootloader将kernel从flash中拷贝到RAM以后,bootloader将退出舞台,并将这个舞台交给了kernel。中间有些交接的细节过程,这里不赘述,我们直接从kernel的启动开始分析。不同平台的kernel启动时,最开始部分的汇编脚本会有些不一样,但是从汇编跳转到C语言的代码过程中的第一条命令大多数都是start_kernel函数,比如arm平台,原创 2017-03-05 20:50:37 · 24245 阅读 · 7 评论 -
qsort用法--完整版(解释了cmp)【转】
qsort用法--完整版(解释了cmp)【转】用qsort快两年的时候了,却一直没有真正弄懂cmp函数的返回值1,-1,0的函数. 今天在做凸包时,郁闷了....所以请教了snoopy,终于弄懂了cmp返回值的意识:int cmp(const void *a, const void *b)返回正数就是说 cmp 传入参数第一个要放在第二个后面, 负数就是传入参数第一个要转载 2017-03-23 23:57:14 · 6885 阅读 · 0 评论