- 博客(15)
- 资源 (10)
- 收藏
- 关注
转载 套接字socket
同一台计算机上运行的进程可以相互通信:经典的进程间通信IPC:管道、先进先出、消息队列、信号量以及共享内存。不同计算机(通过网络连接)上运行的进程相互通信:网络进程间通信(network IPC)。 套接字(socket):是一种特殊的I/O接口,它也是一种文件描述符。套接字是通信端点的抽象。应用程序访问文件需要使用文件描述符,访问套接字也需要使用套接字的文件描述符。
2014-03-26 11:15:29 684
原创 TCP/IP参考模型
TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。TCP/IP协议簇分为四层,IP位于协议簇的第二层(对应OSI的第三层),TCP位于协议簇的第三层(对应OSI的第四层)。 ┌─────┐ │ 应用层 │←第七层 ├─────┤ │ 表示层 │ ├─────┤ │ 会话层 │ ├─────┤ │ 传输层 │
2014-03-25 20:36:13 802
原创 设备号Major
在Linux2.6的版本中,用dev_t类型来描述设备号(dev_t是32位数值类型,其中高12位表示主设备号,低20位表示次设备号)。 用两个宏MAJOR,MINOR分别获得dev_t设备号的主设备号和次设备号,而且用MKDEV宏来实现逆过程,即组合主设备号和次设备号而获得dev_t类型的设备号。实现代码如下:#include MAJOR(dev_t dev);MI
2014-03-25 09:56:39 649
转载 Linux中断处理体系结构
1.中断处理的体系结构 Linux内核将所有的中断统一编号,使用一个irq_desc结构数组来描述这些中断; 每个数组项对应一个中断,也可能是一组中断,它们共用相同的中断号,里面记录了中断的名称、中断状态、中断标记(比如中断类型、是否共享中断等),并提供了中断的低层硬件访问函数(清除、屏蔽、使能中断),提供了这个中断的处理函数入口,通过它可以调用用户注册的中断
2014-03-24 17:31:59 428
原创 字符驱动程序框架
框架:…………………………………………………………………………………………………………………………………………………………………………………………………………应用部分:应用程序:open read write(这些函数由C库实现)(C库怎么进入内核)open read write 的调用实际上是执行一条swi val 指令,这条汇编指令就会引发一个异常,相当于中断一样,
2014-03-16 10:12:18 490
原创 创建最小根文件系统
创建最小根文件系统: (1)/dev/console /dev/null (2)/init=>busybox init本身就是busybox (3)/etc/inittab 配置文件 (4)配置文件指定的应用程序 (5)C库创建设备文件 :先查看pc(sever)机上这两个设备文件 ls /dev/console /dev/null -lmkdir dev
2014-03-15 22:34:37 393
转载 busybox的配置、编译
busybox-1.13.4的配置、编译编译busybox-1.13.4需要GCC3.X以上版本。下载、解压后为selfmake_cross-3.4.4.tar.gz,将其释放到目录 /usr/local/arm 目录下,编辑 /etc/profile 加入如下内容:PATH=$PATH:/usr/local/arm/3.4.4/bin并运行:# source /etc/pro
2014-03-14 21:09:08 471
原创 根文件系统init进程分析
U-boot:启动内核内核 :启动应用程序内核启动的第一个应用程序是/sbin/init,启动的最终目的是启动其他的应用程序。init程序 (1)读取配置文件 (2)解析配置文件 (3)执行应用程序(根据配置文件)配置文件:(1)指定应用程序(2)什么时候执行busybody->init_main (init进
2014-03-14 20:01:26 537
原创 函数指针变量与指针型函数区别
函数指针变量定义的一般形式:类型说明符 (*指针变量名)()其中,“类型说明符”表示被指函数的返回值类型。“(*指针变量名)”表示*后面的变量是定义的指针变量。最后的空括号表示指针变量所指的是一个函数。例如:int (*pf)();表示pf是一个指向函数入口的指针变量,该函数的返回值是整形。 指针型函数的一般形式:类型说明符*函数名(形参列表){………………}其中函
2014-03-13 18:24:37 531
转载 Linux Makefile.txt 分析
linux 2.6.x Makefile linux-2.6.x makefile linux-2.6.20.6/Documentation/kbuild/makefiles.txt 一、 概述 linux的makefile有五个部分: Makefile:顶层Makefile.config:内核配置文件ar
2014-03-12 19:28:42 679
转载 U-boot第二阶段代码分析
U-Boot第一阶段的启动流程。(nandflash启动,把nand的4k代码考到sram中,因为nand没址线,不能映射到内存,所以通过sram进行过度,sram中4k代码把整个uboot拷贝到sdram上,初始化好堆栈,为c语言提供条件,进入uboot的第二阶段! )这个阶段主要是初始化硬件设备,为加载U-Boot的第二阶段代码准备RAM空间最后跳转到lib_arm/board.c中start
2014-03-06 21:04:24 977
转载 LINUX内核经典面试题
原文地址:LINUX内核经典面试题 作者:sunjiangang-ok1) Linux中主要有哪几种内核锁?2) Linux中的用户模式和内核模式是什么含意?3) 怎样申请大块内核内存?4) 用户进程间通信主要哪几种方式?5) 通过伙伴系统申请内核内存的函数有哪些?6) 通过slab分配器申请内核内存的函数有?7) Linux的内核空间和
2014-03-05 09:09:13 476
转载 U-boot Start.s
_TEXT_BASE:.word TEXT_BASE.globl lowlevel_initlowlevel_init:/* memory control configuration *//* make r0 relative the current location so that it *//* reads SMRDATA out of FLASH rather
2014-03-03 21:55:17 527
转载 nor与nan
1.什么是nand,什么是nor?nand启动与nor启动的区别及联系。(收集整理)答:1)在NOR FLASH里面可以直接执行代码,而在NAND FLASH里面不可以,在2410里面,如果选择NAND启动方式的话,NAND里的代码是被拷贝到RAM里面去执行的。2)NAND FLASH每次取数据前要写入好像是0X55,0XAA才行,而NOR FLASH直接取到数据。3)NO
2014-03-03 20:53:12 736
原创 bootloader
Bootloader一个嵌入式系统从软件角度来看分为三个层次:1.引导加载程序 (包括固化在固件中的boot程序(可选),和bootloader 两大部分)2.Linux内核 3.文件系统(包括了系统命令和应用程序)一个同时装有BootLoader 、内核的启动参数、内核映像和根文件系统映像的固态存储设备的典型空间分配结构图:Bootloader——boot paramet
2014-03-03 18:03:04 627
安全函数strcpy_s、strncpy_s、snprintf_s、memcpy_s
2017-11-01
Linux0.11版本源码
2017-09-09
ZStack各层API手册
2014-06-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人