- 博客(211)
- 资源 (17)
- 收藏
- 关注
原创 openwrt软件包cmake额外参数的添加
只需要加入一行CMAKE_OPTIONS即可,如下实例,告知cmake编译时加入-Wno-dev参数。但是当某些软件包需要特殊指定一些参数时,就需要修改软件包的makefile了。正常情况下openwrt中软件包使用cmake时,基本参数要已经完备了。具体参数在、include/cmake.mk中。
2024-09-18 17:38:17
268
原创 3211. 生成不含相邻零的二进制字符串-C语言实现
如果与的结果大于0,则存在多个相邻的1(对应上面的取反,就是存在多个相邻的0),否则为符合要求的字符串。这是LeetCode上的题目,看了很多解答,但没有找到C语言的实现。我也是做了很久,学习了网友的思路,自己用C语言实现。将取反后的数字与此数字右移一位的数字做与运算。再做一个10进制转2进制字符串的工具函数。将数字按照相同长度取反。
2024-08-07 10:22:15
366
1
转载 各版本的lorawan区别及更新记录
删除了第4.3.3.2段。在A类章节中增加了DeviceTimeReq/Ans MAC命令,B类信标采集需要这些命令,不推荐使用Beacon Time Req/Ans MAC命令。在第4.3.1.1节中,修正了ADR回退序列描述(ADR_ACK_LIMIT错误地写成了ADR_ACK_DELAY)。将时间精度字段Prec添加到Beacon,以描述源网关的定时精度,并添加了对其使用的描述。请注意,常规上行链路流量预计在B类和C类。在第18.2节的标题中纠正了格式问题(之前在1.0.1版本中为第19.2节)。
2024-01-03 16:55:04
395
原创 linux C判断内核版本号
当设备驱动需要同时支持不同版本内核时,在编译阶段,内核模块需要知道当前使用的内核源码的版本,从而使用相应的内核 API。 头文件 linux/version.h : **LINUX_VERSION_CODE 内核版本的二进制表示,主、从、修订版本号各对应一个字节; KERNEL_VERSION(major, minor, release) - 由主、从、修订版本号构造二进制版本号。** 在
2015-09-02 17:49:25
12247
转载 openwrt SDK, 利用SDK生成自己的ipk安装包
Openwrt SDK是一个可再定位的,预编译好的OpenWrt工具链,适用于在不从头开始编译整个系统的前提下,针对一个特定平台交叉编译单个用户空间包。使用SDK的原因:为了保证二进制和特性兼容性,针对特定的发行版编译自定义软件编译更新版本的指定包文件使用自定义的补丁或者不同特性来重新编译已经存在的包#-----官方文档如下 This
2015-08-27 16:16:28
6655
原创 openwrt下让telnetl与ssh(dropbear)共存
当前状况 openwrt中默认用户名为root,但是默认是没有密码的,所以ssh默认不开启,但是telnet是在无密码情况下使用的,当设置了root的密码,则ssh开启,telnet关闭。而ssh的方便性又大于telnet,telnet在产品产测的情况下又要使用,所以有没有什么方法可以让二者共存呢?步骤一 修改telnet自启动脚本,删除对密码和ssh相关的判断,如下注释star
2015-07-26 22:19:12
13262
转载 关于openwrt 平均负载的含义
文章作者:姜南(Slyar) 文章来源:Slyar Home (www.slyar.com) 越来越多人开始接触Linux操作系统,从VPS到无线路由的刷机系统(如OpenWRT、Tomato),同时也必不可少地会在各式各样的探针和系统监测界面上看到”系统平均负载”或者”Load Average”这样的字眼,但是它并不像我们习惯中Windows、Mac操作系统提供百分比显示CPU、内存占用率,而是
2015-05-07 09:06:34
14278
1
转载 wget的ftp下载方式
wget 下载ftp的通过用户名和密码的方式、请教!如何使用wget下载一个需要用户名和密码的ftp服务上的文件 .linux下载文件命令、wget通过shell运行FTP Wget实现上传下载,如果用wget下载有密码的ftp链接地址呢?(1) wget ftp://wugk@192.168.0.88/auto_LNMP.sh –ftp-password=123456 这是一种方式。
2015-04-29 22:57:33
9357
转载 C语言的那些秘密之--函数返回局部变量
一般的来说,函数是可以返回局部变量的。 局部变量的作用域只在函数内部,在函数返回后,局部变量的内存已经释放了。因此,如果函数返回的是局部变量的值,不涉及地址,程序不会出错。但是如果返回的是局部变量的地址(指针)的话,程序运行后会出错。因为函数只是把指针复制后返回了,但是指针指向的内容已经被释放了,这样指针指向的内容就是不可预料的内容,调用就会出错。准确的来说,函数不能通过返回指向栈内存的指针(注意这
2015-04-28 16:04:48
2060
转载 openwrt下无线网桥设置,bridge AP模式
**bridged AP vs route 模式**bridged AP 模式 相对于上一级路由器的 DHCP server 和 openwrt 无线路由器对下面的接入点是透明的 各个接入点通过无线路由器直接向上层的 DHCP 服务器请求地址 openwrt 上面无需启动多余的 dnsmasq 多占一份资源 (缺点) 没有路由功能,基于上层服务的 VPN, socks 等翻墙代理可能没法用了
2015-04-21 22:36:22
50918
转载 用C实现文件复制
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2015-04-20 17:32:23
2378
转载 linux内核中的__read_mostly变量
linux内核中的__read_mostly变量 内核版本:2.6.14在阅读socket源码的时候,有如下一句(net/socket.c):[plain] static struct vfsmount *sock_mnt __read_mostly; 感觉__read_mostly很奇怪,就深入分析了一下。__read_mostly原语将
2015-03-12 10:39:35
1957
原创 centos上设置网卡错误
今天把以前硬盘里存的centos放到公司的vmware上运行,发现网络起不来,提示错误是这样的: device “eth2” does not seem to be present, delaying initialization 然后我看了[def@localhost ~]$ cat /etc/sysconfig/network-scripts/ifcfg-eth2 DEVICE="eth2
2015-03-09 18:05:31
5136
转载 字节序(大小端)详解从高低地址和高低位开始理解
字节序(大小端)详解从高低地址和高低位开始理解一、字节序定义字节序,顾名思义字节的顺序,再多说两句就是大于一个字节类型的数据在内存中的存放顺序(一个字节的数据当然就无需谈顺序的问题了)。其实大部分人在实际的开发中都很少会直接和字节序打交道。唯有在跨平台以及网络程序中字节序才是一个应该被考虑的问题。在所有的介绍字节序的文章中都会提到字节序分为两类:Big-En
2015-03-08 21:20:01
14487
1
转载 Bus error的调试解决方法
转自:http://bavon.bokee.com/5429805.html 在x86+Linux上写的程序,在PC机上运行得很好。可是使用ARM的gcc进行交叉编译,再送到DaVinci目标板上运行的时候,出现了Bus error。 出现的位置如下(其中Debug的内容是我在程序中添加的调试信息): root@211.69.193.189:~# arm_v5t_le-gcc -g shit.
2015-02-26 18:10:32
30477
转载 Ubuntu-图形界面和字符界面转换、指定默认启动界面
1、按ALT+CTRL+F1切换到字符界面(Linux实体机) 如果是VMware虚拟机安装的Linux系统,则切换到字符界面的时候需要以下操作 按下ALT+CTRL+SPACE(空格),ALT+CTRL不松开,再按F1。这样就可以切换到字符界面了。2、按ALT+CTRL+F7切换到图形界面(Linux实体机) 如果是VMware虚拟机安
2015-02-03 14:28:13
1363
转载 linux shell 获取字符串长度,空字符串判断
计算字符串长度可用的4种方法: echo “$str”|awk '{print length($0)}' expr length “$str” echo “$str”|wc -c 但是第三种得出的值会多1,可能是把结束符也计算在内了 array 为数组length=${#array[@]} echo $length 可得数组个数
2015-01-21 13:22:58
8080
转载 linux shell随机数获取的方法
http://www.cnblogs.com/chengmo/archive/2010/10/23/1858879.html在日常生活中,随机数实际上经常遇到,想丢骰子,抓阄,还有抽签。呵呵,非常简单就可以实现。那么在做程序设计,真的要通过自己程序设计出随机数那还真的不简单了。现在很多都是操作系统内核会提供相应的api,这些原始参数是获取一些计算机运行原始信息,如内存,电压,物理信号等
2015-01-19 17:38:28
5269
原创 C语言libcurl POST json串错误“Unsupported Media Type”
这两天在用libcurl发送http请求代码写好了,联调时发现服务器老是返回“Unsupported Media Type”这个错误,不支持的媒体类型,百度谷歌了一圈遇见这个问题的不少,但是大多数没有把解决方案发出来。其实很简单,如果能认真把curl的example例程看清楚就不会出现这样的问题。下面把代码发出来,供后来者参考帖子请看http://bbs.csdn.net/topi
2015-01-19 15:14:52
4947
转载 wifidog认证流程(图文版)
学习使用wifidog一段时间了,觉得这玩意真的不错,虽然有些代码写的不够严谨,运行效率不够高,但是少量人数情况下实现portal是很好的方案。下面是我摘自一个博客的内容和apfree写的文档中的一部分发上来的,希望能对研究wifidog的新人给予帮助!一. 用户上线1. 用户访问网络,通过iptables将未认证的用户dnat到wifidog进程,wifido
2015-01-14 14:37:28
13273
4
转载 va_start之后va_end是必须的吗?
这本应是一个无须争论的问题——当然必须调用。stdarg(或varargs,下略)中提供的功能就是一种契约:“你按我的约定方式使用这些宏——即必须调用va_end——我就给你提供实现可变长参数列表所需要的功能。”使用stdarg本来是很简单的事情——按照一个简单的契约(另见相关链接)办事就可以了——根本无须了解其具体实现。有人乐意去研究该功能
2014-12-15 09:39:44
5512
2
转载 cmd-bat批处理命令延时方法
批处理延时启动的几个方法 方法一:ping 缺点:时间精度为1秒,不够精确 @echo off @ping 127.0.0.1 -n 6 >nul start gdh.txt方法二:vbs start /wait 缺点:生成临时文件 有点:时间精度为0.001秒,精度高 @echo off echo wscript.
2014-12-11 17:09:28
160895
7
转载 SecureCRT鼠标双击或拖成变成Ctrl+C的解决办法
很长一段时间在SecureCRT中双击鼠标或拖动鼠标选择文字的时候都会变Crtl+C键,让程序意外鼠出,或无法操作一直在SecureCRT中找问题没有找到,最后发现是与金山词霸的划译冲突造成的,把他关闭就行了如果有人遇到类似问题看看是不是有取词软件造成的
2014-12-04 15:31:32
9981
13
转载 linux strace命令--跟踪系统调用
简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。输出参数含义root@ubuntu:/usr# strace ca
2014-11-18 15:35:15
18825
转载 linux scsi sd设备文件名的生成
scsi sd设备的设备文件名,如sda等,是在sd驱动加载时自动生成的。他在生成设备文件时,有一套文件名的生成规则。具体生成算法总的来说就是首先向系统申请一个ida,也就是唯一id。然后把id映射成设备文件名sdxxx。在设备释放时,该ida会被释放,以便以后使用。由于ida是由系统维护的全局量,所以可以保证生成的设备名的唯一性。具体生成是在scsi sd设备被探测到后,调用sd_probe
2014-11-13 20:39:07
3095
转载 linux grep,最有用的搜索命令,中文版
linux grep命令1.作用Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。2.格式grep [options]3.主要参数[options]主要参数:-c:只输出匹配
2014-11-12 14:51:41
4859
转载 OpenWrt启动过程分析+添加自启动脚本
总结一下OpenWrt的启动流程:1.CFE->2.linux->3./etc/preinit->4./sbin/init ->5./etc/inittab ->6./etc/init.d/rcS->7./etc/rc.d/S* ->8. OpenWrt是一个开放的linux平台,主要用于带wifi的无线路由上。类似于Ubuntu、Red Hat、之类的linux发行版本,它也有一
2014-09-24 21:36:38
45292
原创 AR9331出现connect-debounce failed,port 1 disabled解决方法备忘
基于AR9331的路由器,自己画的pcb板子,竟然出现这个错误,百度下,貌似有不少人遇见过这个错误,但是在修改板子前我的固件用的是没问题的,USB完美使用修改过板子后出现这个问题!hub 1-0:1.0 connect-debounce failed,port 1 disabled后台串口不停的报这个错误。最后发现是USB的数据线反了,哈哈,跳线反过来试试!成功识别
2014-09-19 10:01:28
6577
转载 dnsmasq配置域名重定向和dns缓存
1. dnsmasq简介DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,它提供了DNS功能和可选择的DHCP功能,它服务那些只在本机和局域网可用的域名,这些域名是不会在全球的DNS服务器中出现的,既不能通过外网访问。本文主要实现:使用dnsmasq通过缓存来加速dns解析,提高上网速度,以及比hosts更强大的域名重定向功能,为在本机测试二级域名提供了很大的方便。2
2014-09-16 13:03:02
40629
1
转载 linux下netlink详解
Netlink 是一种特殊的 socket,它是 Linux 所特有的,类似于 BSD 中的AF_ROUTE 但又远比它的功能强大,目前在最新的 Linux 内核(2.6.14)中使用netlink 进行应用与内核通信的应用很多,包括:路由 daemon(NETLINK_ROUTE),1-wire 子系统(NETLINK_W1),用户态 socket 协议(NETLINK_USERSOCK),防火
2014-09-16 10:42:39
3014
原创 修改linux下命令提示行路径长度
默认的路径提示为完整的路径,这样一行就很长了,可能会占全部的宽度,看着很不爽!就像下面这样jack@ubuntu:~/trunk-new/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.10.17/net/netfilter/commercials$基本占用终端80%的宽度,如果能改成只显示最后
2014-09-15 10:29:31
3357
转载 使用IWPRIV配置WIFI
原地址:http://www.clz.me/%E4%BD%BF%E7%94%A8iwpriv%E9%85%8D%E7%BD%AEwifi/iwpriv是iwconfig的辅助工具,用来配置无线网络接口的各种私有可选参数。iwpriv针对不同种类的驱动实现特定的参数处理和设置。iwpriv不跟参数时会列出每个接口上可用的私有命令和它们对应的参数。用户可根据这些信息对特定的接口使用不同的命令操
2014-09-13 16:08:52
9913
转载 MT7620 OPENWRT中AP CLIENT的配置方法
以下方法来自WRTnode罗老师由于在预览版中apcli还未配置进入luci界面这个阶段的apcli的配置需要手动完成:0、上级路由开通DHCP服务1、ssh登陆到WRTnode2、输入aps,扫描当前可用ap3、输入vw命令(vw是vi /etc/config/wireless的快捷命令)初始内容如下:123456789101112131415
2014-09-13 16:07:46
25172
转载 linux下wget命令,支持断点续传,ftp、http、https等协议
转载的地址:http://blog.163.com/likaifeng@126/blog/static/32097310201171833420905/ 今天操作远端机器的时候发现少一个安装包, 需要传到对方的机器上,还能使用通过的老办法,直接SSH连上去了,发现传的很慢, 只有40K的样子, 看时间还需要二个多小时就有点受不了了。想想有一台FTP服务器上有这个文件,可以直接从FTP服
2014-09-04 17:42:01
21900
转载 常见的路由器(刷openwrt的同学看下!)
TP-LINKWR840V1AR72414M32MͬWR841 V7 V1.1AR724132M V2AR93414M16M
2014-08-21 13:53:21
64270
1
转载 修改svn服务器地址(不改变svn数据)
本文章给大家介绍svn新地址修改方法,这里包括了linux,windows,centos三种平面的修改方法,各位同学有兴趣可进入参考。在工作环境调整时,有的时候SVN服务器的地址需要修改,此时我们如何修改本地库的地址,而不用重新下载呢?SVN中有一个简单的解决办法:1,环境为windows7在工作复本的根目录上右键->TortoiseSVN->重新定位(Relo
2014-08-07 13:29:37
33545
1
转载 JAVA/C/C++获取当前系统毫秒时间+计算程序运行时间
笔者在做Android NDK底层测试编码,很多时候需要获取当前系统毫秒时间来准确分析数据,下面的代码是在Android系统上做了测试,所以此函数代码在Linux系统可行,至于VC上面是否可行,我也没测试(应该不行吧),因为VC与Linux C中的sleep就有很大差别。我将C/C++获取当前系统毫秒时间分享给大家。Java获取当前系统毫秒时间很简单:public
2014-07-30 14:06:14
5819
转载 【Z-Stack发送函数AF_DataRequest】
Z-Stack 中发送数据通过在应用层调用函数void SampleApp_SendFlashMessage( uint16 flashTime )完成,其中flash Time 为发送的数据,这个函数在应用中通过调用afStatus_t AF_DataRequest( afAddrType_t *dstAddr, endPointDesc_t *srcEP,
2014-07-25 10:53:20
3670
hdsc CCID在线离线编程器 Rev6.04
2022-10-15
IxChariot 9.5 Endpoint WINDOWS+LINUX+macOS + Android.zip
2020-04-24
Linux dns服务器bind
2011-07-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人