- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 static关键字引入历史及作用
static关键字引入历史及作用static在C中第一次引入static在C中第二次重用static在C++中的第三次重用 static在C中第一次引入 起初,C引入static关键字是为了表示退出一个块后依然存在的局部变量。修饰局部变量,改变了其存储周期。在这种情况下,static的意义:变量一直存在 static在C中第二次重用 static在C中的第二种含义,修饰全局变量和函数时,表示不能被其它文件访问,改变了其作用域。为了避免引入一个新的关键字,static被重用了 static在C++中的第三次重
2020-08-22 19:25:20 107
原创 03ARP数据报格式
ARP数据报格式 在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址,而数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃。因此在通讯前必须获得目的主机的硬件地址。ARP协议就起到这个作用。源主机发出ARP请求,询问“IP地址是192.168.0.1的主机的硬件地址是多少”,并将这个请求广播到本地网段(以太网帧首部的硬件地址填FF:FF:FF:FF:FF:FF表示广播),目的主机接收到广播的ARP请求,发现其中的IP地址与本机
2020-07-12 10:16:34 128
原创 02以太网帧格式
以太网(RFC 894)帧格式 以太网的帧格式如下所示: 其中的源地址和目的地址是指网卡的硬件地址(也叫MAC地址),长度是48位,是在网卡出厂时固化的。用ifconfig命令看一下,“HWaddr 00:15:F2:14:9E:3F”部分就是硬件地址。类型字段有三种值,分别对应IP、ARP、RARP。帧末尾是CRC校验码。 以太网帧中的数据长度规定最小46字节,最大1500字节,ARP和RARP数据包的长度不够46字节,要在后面补填充位。最大值1500称为以太网的最大传输单元(MTU),不同的网络类型有不
2020-07-12 10:02:32 356
原创 01网络层及其协议
TCP/IP协议栈与数据包封装 TCP/IP网络协议栈分为应用层(Application)、传输层(Transport)、网络层(Network)和链路层(Link)四层,如下图所示。 两台计算机通过TCP/IP协议通讯的过程如下所示。 传输层及其以下的机制由内核提供,应用层由用户进程提供,应用程序对通讯数据的含义进行解释,而传输层及其以下处理通讯的细节,将数据从一台计算机通过一定的路径发送到另一台计算机。应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Enca
2020-07-12 09:52:20 191
原创 驱动模块的编写##向内核添加系统调用函数
1.驱动模块的编写 例子: @在PC机源码目录drivers/arm_emb: mkdir demo_simple 建一个模块目录 vim demo.c 编写demo stat
2016-01-20 23:58:56 589
原创 SD卡, EMMC固化 ,关于bootloader linux
一. 将bootloader烧入SD卡 1.格式化SD卡(不挂载): fdisk /dev/sdx -d 删除 -n 新建分区 -w 保存退出 6~default sdx1 两种格式化方式: mkfs -t vfat /dev/sdx1 mkfs.vfat /dev/sdx1
2016-01-20 13:42:40 1423
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人