自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 spring配置文件标签和注解

在代码中JDBC.XML中有如下配置:<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="cn.xxx.xxx.xxx.dao"/> <property name="sqlSessionTemplateBeanName...

2020-03-06 22:07:15 187

原创 OpenWRT路由器-中继模式下无线接入

本文主要介绍刷入了OpenWRT系统的路由器如何作为二级路由器,通过wifi接入上一级路由以及发出wifi供本局域网下的设备连接二级路由器可以增强现有的信号现在的路由器一般都是双频路由器,双频路由器往往是两块网卡,一块是2.4G一块是2.5G. 所以可以使得其中一块作为客户端连接上一级路由器的wifi,然后使用另一块向自己的客户端发送wifi设置步骤如下:一、首先通过网线连接无线路...

2019-01-04 17:47:09 21820 1

转载 Linux 内核网络协议栈 -sk_buff结构体

sk_buff结构体是linux网络代码中最重要的数据结构,是整个网络传输载体。所以sk_buff结构体里面有很多关于其他功能的成员字段,比如:防火墙,子路由系统,多播等。这些字段并不是一定有的,只有在满足特点条件才有的。 sk_buff结构体是双链表结构,sk_buff结构体关联多个其他结构体:第一是数据区:由sk_buff中head和end指向的数据块,用来存储sk_buff结构的数据...

2018-11-12 19:01:33 596

原创 OpenWrt路由器连接上级wifi并创造新的wifi给下一级使用

我们在小米路由上刷入OpenWrt系统,然后将路由器连接上一级wifi,自己再作为路由器发出wifi给局域网用户使用,开发人员还可以在该路由器上挂载自己的驱动和应用程序该路由器刷机流程为:miwifi.bin-&gt;ssh工具包-&gt;openwrt系统(刷机流程请参考我之前的博文)下面是openwrt路由器设置过程:1.用网线连接电脑和路由器,登录路由器,选择wifi,然后点击Scan(即搜...

2018-06-01 16:08:38 14314 3

原创 linux内核驱动(抓取数据包并发送)项目总结

这一串表情可以代表我在做linux内核驱动项目整个过程的心情。。。。。。。。刚开始,对这个项目完全不知道怎么做,该学什么知识,能用到什么知识,完完全全处于懵逼的状态,什么都不知道后来在老师和师兄的指导下,以及在查了各种资料后,慢慢的知道自己要学哪几个最基本的知识点(netfilter、字符设备驱动、网络设备驱动),但是直到后也很迷茫,不知道该怎么使用接着,慢慢的看现有的代码逐渐上手编写调试代码,觉...

2018-03-17 16:51:00 1821 3

原创 linux make makefile

嵌入式Linux系统移植的四大步骤 http://blog.csdn.net/victorwjw/article/details/72864770Linux 应用---make及makefile的编写 http://blog.csdn.net/zqixiao_09/article/details/50388695

2018-01-24 19:56:08 197

原创 c语言-栈、堆和静态区 以及编码风格小结

1、堆:由malloc系列函数或new操作符分配的内存。其生命周期由free或delete决定。     在没有释放之前一直存在,直到程序结束。其特点是使用灵活,空间比较大,     但容易出错。2、栈:保存局部变量。栈上的内容只在函数的范围内存在,当函数运行结束,这些      内容也会自动被销毁。其特点是效率高,但空间大小有限。3、静态区:保存自动全局变量和static变量

2017-12-14 17:01:30 202

原创 共享网卡,让另一台设备有线连接可以上网

环境:在一台电脑上共享网卡,让另一台设备通过网线连接到这台电脑可以上网这次实验,我们把电脑A的无线网卡共享,让电脑B网线连接电脑A实现上网步骤如下:1.电脑A连接上无线网络,然后电脑B网线连接电脑A电脑A的网络连接变成下图所示:WLAN是无线网卡,以太网2是有线网卡2.把电脑A的无线网卡变成共享的勾选允许,然后在家庭网络连接中选择你要共享到的网卡的名字接

2017-12-05 14:23:07 22102 1

原创 基于openwrt系统的小米路由器创建自启动脚本

环境:小米路由器烧制了openwrt系统用putty或者其他远程连接工具,登录路由器1、进入init.d目录    cd /etc/init.d2、创建文件test然后编辑  vim test3、在打开的test文件中加入一下内容#!/bin/sh /etc/rc.common # /init.d/testSTART=99start(){     opkg

2017-11-28 11:08:20 5949

原创 linux内核数据结构sk_buff偏移正解

在网上查了好多资料,每个人都说,skb->data指向的就是以太头部的开始,然后是ip头,再然后是传输层头,payload每个人都还说,skb->len - skb->data_len就是(以太头长+ip头+传输层头+payload)的长度 这些资料真的是害人不浅啊!!!!其实skb-data指向的是ip头开始的位置,然后传输层头,payload而且skb->len - s

2017-11-02 11:01:45 494 1

原创 linux C程序中调用shell终端的命令

使用popen在学习unix编程的过程中,发现系统还提供了一个popen函数,可以非常简单的处理调用shell,其函数原型如下:FILE *popen(const char *command, const char *type);该函数的作用是创建一个管道,fork一个进程,然后执行shell,而shell的输出可以采用读取文件的方式获得。采用这种方法,既避免了创建临时文件,又不受输出

2017-10-14 19:56:16 934

原创 linux内核驱动调试bug解读

在这里我是根据自己的项目来解读bug的,不一定适合其他人1、之前使用NF_STOLEN,在外网运行的服务器还是可以收到udp调试工具发到外网服务器的udp数据包,一直很纳闷,中间在路由器上已经把udp数据包给截获了,理论上应该是收不到的,后来发现是在过滤数据包的时候过滤条件限制错了,所以发往外网的数据包成了漏网之鱼。之前是if(in->name!=NULL)&&(0!=strcmp

2017-09-29 10:21:46 313

原创 java刷题笔记-线程

java中的线程安全是什么:      就是线程同步的意思,就是当一个程序对一个线程安全的方法或者语句进行访问的时候,其他的不能再对他进行操作了,必须等到这次访问结束以后才能对这个线程安全的方法进行访问什么叫线程安全:     如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的

2017-09-13 16:02:57 202

原创 java刷题笔记-java数组、Object类

一维数组的声明:1、一维数组的声明方式:type var[];   或type[] var;例如:int a1[];     int[] a2;    double b[];     Person[] p1;     String s1[];2、java语言中声明数组时不能指定其长度(数组中元素的个数),例如:int a[5];  //非法

2017-09-13 15:13:55 245

原创 java代码块的划分及作用

代码块:用{}包围的代码java中的代码块按其位置划分为四种:一 局部代码块     位置:局部位置(方法内部)     作用:限定变量的生命周期,尽早释放,节约内存     调用:调用其所在的方法时执行     举例:红色部分     class exampleDemo{         public void example(){            {

2017-09-13 11:19:39 333

原创 java学习笔记-父与子的关系

父类 a= new 子类()1、父类中private的方法,可以被重写,但是不能被继承。如果被重写了,那么:父类 a=new 子类(),运行的时候,调用的是子类的private方法。

2017-09-12 17:48:28 353

原创 调试路由器驱动小结

1:要想办法减少花费时间的工作,就比如驱动程序写的有差错,上传到路由器,路由崩溃,之前只能从头开始刷路由器,每一次刷都要花费20分钟左右,太浪费时间了今天的解决办法是强行卸载驱动驱动安装的时候是用 opkg install 安装指定的软件包如果用rmmod xxx.ko卸载不了的话则用 opkg remove 卸载已经安装的指定的软件包opkg 还有其他命令,例如:opkg

2017-08-29 19:35:47 492

原创 小米路由器刷机流程

1. 打开MiWiFi开发板官网,下载 ROM For Mini开发版,下载完毕放入U盘,并将包名改为miwifi.bin (网址:http://www.miwifi.com/miwifi_download.html-->ROM-->ROM For Mini开发版)2.断开路由器的电源,将U盘插入路由器的USB接口;用细长的工具按住reset后,接通电源,待路由器指示灯变为黄灯

2017-08-25 11:01:22 26188 1

原创 linux驱动和应用程序如何上传到路由器

一、上传驱动流程下面我将介绍一下如何将在Ubuntu上写的驱动程序刷进路由器上,本实验是以小米路由器为例的1.首先在路径 /home/openwrt6/openwrt/package/kernel/  (该路径就是你所编译好的openwrt系统所在路径,openwrt目录下有package,package下有kernel)然后在此目录下建立example文件夹,然后在里面建立src文件

2017-07-25 20:01:30 1070

原创 git oschina使用步骤总结

1、首先在power shell的命令行输入git config --global user.name "用户名"git config -global user.email "邮箱"2、在本地建立版本库(oschina叫项目)(其实就是创建一个文件夹,也可以不创建直接用已有的文件夹)3、初始化版本库(这一步才是真正的创建仓库)git init4、关联本地仓库到远程仓库

2017-06-20 23:52:14 1009

原创 git github分支管理

git的入门教程:http://blog.jobbole.com/78960/一、远程仓库有master和dev分支1. 克隆代码git clone https://github.com/master-dev.git # 这个git路径是无效的,示例而已2. 查看所有分支git branch --all # 默认有了dev和master分支,所以会

2017-06-20 16:19:20 611

原创 C语言编写头文件及应用

最简单的例子可以参考:http://jingyan.baidu.com/article/6b97984dcfd2991ca2b0bf03.html头文件是一种文本文件,使用文本编辑器将代码编写好之后,以扩展名.h保存就行了。头文件中一般放一些重复使用的代码,例如函数声明,变量声明,常数定义,宏的定义等等。当使用#include语句将头文件引用时,相当于将头文件中所有内容,复制到#include

2017-06-17 13:25:00 1329

原创 javaWeb学习笔记-Spring+SpringMVC注解

一、SpringMVC注解SpringMVC是一个基于DispatcherServlet的MVC框架,每一个请求最先访问的都是DispatcherServlet,DispatcherServlet负责转发每一个Request请求给相应的Handler,Handler处理以后再返回相应的视图(View)和模型(Model),返回的视图和模型都可以不指定,即可以只返回Model或只返回View或都

2017-06-14 16:03:09 284

原创 linux驱动编写过程中遇到的几个问题及解决办法

1)抓取qq号一直不成功,直接上程序剖析问题payload的数据类型是char指针,也就是每个元素都是char类型的,qq号的字符为(0-9),并且第一个字符不能为0. ‘0’-‘9’对应的ASCII码的16进制为30-39而且得知qq号的存储方式为16进制,故这样比较:if(payload[15+qqlen]>=0x30&&payload[15+qqlen]但是刚开始并不知道数字前面

2017-06-02 11:05:21 1505

原创 sk_buff

1.skb_reserve()为skb_buff缓存结构预留足够的空间来存放各层网络协议的头信息。该函数在在skb缓存申请成功后,加载报文数据前执行。在执行skb_reserve()函数前,skb->head,skb->data和skb->tail指针的位置的一样的,都位于skb内存空间的开始位置。这部份空间叫做headroom。有效数据后的空间叫tailroom。skb_reserve的操作

2017-03-05 16:43:50 446

原创 Linux设备驱动内核基础

在linux的设备管理中,除了设备类型(字符设备、块设备、网络设备)以外,内核还需要一对称作  主、次设备号的参数,才能唯一标识设备。主设备号:major number次设备号:minor number主设备号是驱动程序的标识,不同的设备可以使用相同的驱动程序,但这时它们具有相同的主设备号。次设备号是用来区分使用相同驱动程序的不同设备,如使用相同驱动程序的不同硬盘。 内核在...

2017-02-28 11:53:01 302

转载 网络分层协议基础解析

网络分层协议解析之一http://blog.csdn.net/jiqiandong/article/details/39393847网络分层协议解析之二http://blog.csdn.net/jiqiandong/article/details/39393867

2017-02-16 15:43:42 254

空空如也

空空如也

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

TA关注的人

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