自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 openwrt + tplink wr703n, TTL刷机

准备工作:  1、首先要焊接好TTL针,连接好TTL线.  2、PC机环境要求        (1)超级终端:SecureCRT、PUTTY或linux下的ckermit        (2)TFTP服务端        (3)可用固件,可以自行下载openwrt代码编译,可者直接下载可用的BIN; PC机串口连接上WR703N后,在串口上执行以下命令:

2015-01-17 19:09:45 3491

转载 在openwrt平台,开发自己的模块

2. 新建自己的packages对于自己新建的package,而这个package又不需要随固件一起安装,换句话说,就是可以当做一个可选软件包的话。我们可以利用我们的SDK环境来单独编译,编译后会生成一个ipk的文件包。然后利用 opkg install xxx.ipk 来安装这个软件。下面具体说下,如何编译一个helloword的软件包。(1)首先,编写helloworld程

2015-01-16 23:21:19 1006

转载 openwrt代码框架

1. 代码上来看有几个重要目录package, target, build_root, bin, dl....---build_dir/host目录是建立工具链时的临时目录---build_dir/toolchain-*是对应硬件的工具链的目录---staging_dir/toolchain-* 则是工具链的安装位置---target/linux/目录里面是各个平台(arch)的相

2015-01-16 23:20:23 619

转载 TPLINK WR703N刷OPENWRT

假设已经有了基础的 Linux 编译环境。(依赖包忽略)一般大概是需要 gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip subversion libncurses-dev ncurses-term zlib-dev gawk 等等,这些包在不同发行版叫的名字不同。Arch Linux

2015-01-13 18:44:23 1116

原创 “强制网络门户”技术

https://personaltelco.net/wiki/PortalSoftware

2014-07-30 15:38:54 1353

原创 libevent事件通知机制

Libevent 是一个基于事件通知机制的网络库,用来开发可扩展性的多线程的网络服务器。Libevent提供了一种机制,可以在指定某个文件描述符或者某个超时事件到达时,执行一个回调函数。应用程序只需要调用event_dispatch(),然后动态增加或移除事件,而不用修改事件循环。Libevent目前支持/dev/poll, kqueue(2), select(2), poll(2), e

2012-06-12 11:37:09 7545

转载 用户空间访问内核空间网络设备

1、设备注册与除名:NIC可用之前,其相关联的net_device数据结构必须先初始化,添加到内核网络设备数据库、配置并开启。不要把注册/除名以及开启/关闭混淆是十分重要的,这是两种不同的概念。如果把加载设备驱动程序模块的动作排除的话,注册和除名是独立于用户之外的,是由内核驱动的。仅仅注册的设备还不能运转。开启和关闭设备都需要用户参与。一旦设备已由内核注册,用户就可通过用户命令看到该设备,

2012-06-12 10:16:34 1880

原创 系统调用实现机制

一个Linux系统分为三个层次:用户层、核心层、硬件层。其中系统调用是用户层与核心层的边界,通过系统调用进程可由用户层转入核心层,在核心层完成指定服务请求后,再返回用户层。系统调用接口看起来和C程序中的普通函数调用很相似,它们通常是通过库把这些函数调用映射成进入操作系统所需要的原语。这些操作原语只是提供一个基本功能集,而通过库对这些操作的引用和封装,可以形成丰富而且强大的系统调用库。这

2012-04-19 15:15:51 1094

原创 用户栈、内核栈

基于线程的用户栈与内核栈:内核在创建每个线程时,都会创建两个栈,一个用户栈,存在于用户空间;一个内核栈,存在于内核空间。当线程在用户空间运行时,cpu栈指针寄存器内容保存用户栈空间地址,使用用户栈;当线程在内核空间运行时,cpu栈指针寄存器保存内核栈空间地址,使用内核栈。当线程因为中断或者系统调用而陷入内核态运行时,线程所使用的栈也要从用户栈切换到内核栈。线程从用户态进入内核态后,

2012-04-19 11:58:06 547

原创 内存空间、堆、栈区别

进程之间内存空间独立,不可互相访问。每个进程可以有多个线程,线程之间共享内存空间。但是,每个线程有自己独立的栈空间,栈空间分为:用户栈、内核栈。 栈(stack): 1、由编译器自动分配与释放,存放函数的参数、局部变量等。 2、存取方式:后进先出。 3、使用:栈空间使用完时,系统会抛出栈异出的异常。 4、申请效率:分配较快,自动分配回收。堆(heap): 1、通

2012-04-19 11:20:37 553

原创 LINUX内核学习记录

Linux 设备驱动(第3版),在线翻译版本链接:http://oss.org.cn/kernel-book/ldd3/index.html LINUX内核源码下载:http://www.kernel.org/ 嵌入式学习网:http://www.embedstudy.com/action-datadownload

2012-04-10 15:13:46 322

原创 字节序

CPU体系一般以字节为单位,进行逻辑寻址。数据类型的长度大于1时,就需要考虑字节存储与传输顺序。字节序,顾名词义,即多字节存储与传输顺序。更直接地说,就是:大于一个字节的数据类型的数据,在内存中的存放顺序(一个字节的数据,无需谈论字节序序问题)。不同的CPU体系,对多字节数的存储机制不太相同。因此,在通信传输中,为了保证通信双方能够正确处理,TCP/IP要求数据传输以大端字节序进行传输

2012-04-10 14:57:56 699

转载 CPU访问字节对齐

编写可移植代码,需要考虑的一个问题是如何存取不对齐的数据。例如, 如何读取一个存储于一个不是 4 字节倍数的地址的4字节值. i386 用户常常存取不对齐数据项, 但是不是所有的体系允许这个,很多现代的CPU体系会产生异常。 可以采用以下的函数,进行字节对齐。#include get_unaligned(ptr);put_unaligned(val, ptr);这些

2012-04-10 12:48:52 2922 1

转载 多核CPU运行模式

多核CPU运行模式主要有以下三种:    •非对称多处理(Asymmetric multiprocessing,AMP)——每个CPU内核运行一个独立的操作系统或同一操作系统的独立实例(instantiation)。    •对称多处理(Symmetric multiprocessing,SMP)——一个操作系统的实例可以同时管理所有CPU内核,且应用并不绑定某一个内核。    •混合

2012-04-05 21:23:18 4987

原创 内核抢占、用户抢占

CPU抢占分两种情况:用户抢占、内核抢占。其中内核抢占是在Linux2.5.4版本发布时加入,同SMP(Symmetrical Multi-Processing,对称多处理器),作为内核的可选配置。 1、用户抢占:        从内核即将返回到用户空间的时候,检查need resched标志,如果被设置,则调用schedule(),此时会发生用户抢占。如果当前进程被抢占,内核会选

2012-04-05 20:58:06 2330

原创 signed与unsigned类型相加

signed与unsigned类型数相加时,     char\short类型:          与uint类型相加时,自动转换为uint类型;因为如果转换为int类型,int类型无法表达uint类型的所有值;          与int类型相加时,自动转换为int类型;     uchar\ushort类型:          与uint类型相加时,自动转换为uint类型;

2012-04-05 20:46:51 2999

原创 软中断,硬中断

软中断,也叫同步中断。软中断是由CPU执行中断产生指令时产生,是由程序预先实现好的,不是随机的。硬中断,也叫异步中断。硬中断是由硬件设备依照CPU时钟信号产生的,即意味着中断发生具有随机性和突发性,能够在指令正在执行时发生。例如键盘中断。 软中断产生源有两种:1、硬中断处理程序产生。即:将硬中断处理程序分成"上半部"和"下半部"。上半部在屏蔽中断的上下文中运行,用于完成关键性的处理

2012-04-05 20:44:41 4273

空空如也

空空如也

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

TA关注的人

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