自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

团长的专栏

让总结成为一种习惯

  • 博客(176)
  • 资源 (7)
  • 收藏
  • 关注

原创 使用shell转换Mac Address

shell脚本中变量截取的应用实例:将MAC Address 由0123456789abc转换成12:34:56:78:9a:bc格式。#!/bin/bash#! change MAC address in mac_list.txt from 0123456789abc to 12:34:56:78:9a:bccat mac_list.txt | while read line |...

2019-01-11 18:22:07 1658

原创 C语言函数隐式声明——implicit declaration warning

implicit declaration of function——函数隐式声明警告原因:1、该函数未被声明,但却被调用了,此时gcc会报这样的警告信息。2、(网友总结)该函数所在源文件没有被编译为.o二进制文件。解决办法:1、在调用之前先声明这个函数,一般使用extern关键字(该关键字非必需)   声明函数可以不加extern,函数默认extern;声明变量必须要加extern...

2018-12-28 14:24:48 38647

转载 C语言函数隐式声明(2)

1 什么是C语言的隐式函数声明在C语言中,函数在调用前不一定非要声明。如果没有声明,那么编译器会自动按照一种隐式声明的规则,为调用函数的C代码产生汇编代码。下面是一个例子:int main(int argc, char** argv){    double x = any_name_function();    return 0;}单纯的编译上述源代码,并没有任何报...

2018-12-27 19:28:15 629

转载 C语言函数隐式声明(1)

这段时间,在看中心后台服务软件源码时发现,有很多自定义函数未经声明却能在主程序中被调用,主程序中没有包括上述函数的头文件,我在各个目录中也找不到上述函数的头文件。这就奇怪了,连使用标准库函数printf()都要包括标准输入输出头文件<stdio.h>,何况是自定义函数?这个问题困扰了我很久。前天问中创公司奚钟华,他说:确实没有头文件,他也试过,在原来的目录中编写了一些新的函数,照葫芦画...

2018-12-27 19:24:17 6842

原创 GCC 编译报错——suggest parentheses around comparison in operand of

warning: suggest parentheses around comparison in operand of ‘&’ [-Wparentheses]该警告希望你在&(逻辑与)表达式左右加上括号。有的时候&&(逻辑且)少写了一个&,也会产生该警告。 例如:   if((a[2]>>1)&0x1 == 1){   ...

2018-12-25 09:29:30 16846

转载 第一次有人把5G解释的这么清楚

这一切,要从一个“神奇的公式”说起,就是这个公式! 还记得这个公式的,请骄傲地为自己鼓个掌,如果不记得,或是看不懂,也没关系,“一个科普”解释一下。 就是这个超简单的公式,蕴含了我们无线通信技术的博大精深,无论是往事随风的1G、2G、3G,还是意气风发的4G、5G,说来说去,都是在这个数学公式上做文章。有线?无线?通信技术,无论什么黑科技白科技,只分两种——有线...

2018-12-18 20:28:22 29537 17

转载 ctrl+c,ctrl+d,ctrl+z在linux程序中意义和区别

ctrl+c,ctrl+d,ctrl+z在linux程序中意义和区别ctrl+c和ctrl+z都是中断命令,但是他们的作用却不一样. ctrl+c是强制中断程序的执行,进程已经终止。 ctrl+z的是将任务中止(暂停的意思),但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态,用户可以使用fg/bg操作继续前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务...

2018-11-22 15:02:51 611

原创 在shell中使用sed

如果有一个abc.txt文件,内容如下:$cat abc.txtaaabbbBATBUSINESSTYPE, INSIDEID--) ONLINE;INSIDEID--) ONLINEcccdddeeefff如果要删除ddd,那么脚本可以这样写:sed -i '/ddd/d' abc.txt //-i,将修改写会原文件如果删除的是一个变量的值,假如变量是va...

2018-08-24 18:26:35 1556

原创 shell脚本中判断上一个命令是否执行成功

shell脚本中判断上一个命令是否执行成功shell中使用符号“$?”来显示上一条命令执行的返回值,如果为0则代表执行成功,其他表示失败。结合if-else语句实现判断上一个命令是否执行成功。经过验证,该方法也适用于make命令,并不仅仅限于shell 命令。示例如下:if [ $? -ne 0 ]; then echo "failed"else ech...

2018-08-24 18:19:42 20289 1

原创 shell 脚本中双引号、单引号、反引号的区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/iamlaosong/article/details/54728393最近要编个shell脚本处理数据,需要检测数据文件是否存在,文件名中包含日期,所以需要生成最近几天的日期,以便检测文件是否存在,看下面的脚本中如何使用双引号、单引号、反引号:OPDATE=`date -d '-1 d...

2018-08-24 18:16:20 3321

转载 shell脚本基本语法

转载自:http://www.92csz.com/study/linux/14.htm终于到shell 脚本这章了,在以前笔者卖了好多关子说shell脚本怎么怎么重要,确实shell脚本在linux系统管理员的运维工作中非常非常重要。下面笔者就带你正式进入shell脚本的世界吧。到现在为止,你明白什么是shell脚本吗?如果明白最好了,不明白也没有关系,相信随着学习的深入你就会越来越了解到...

2018-08-24 18:06:59 6012 2

转载 makefile中的shell调用---注意事项

$$:在makefile中会被替换成一个$。    相关资料是这么描述的:makefile中变量在声明时需要赋予初值,在使用时,需要在使用的变量前加"$"符号,但是最好使用"()"或者"{}"将变量包括起来。如果想使用真实的"$"符号,需要用"$$"来表示 在makefile中使用shell:1. 使用makefile中的$(shell ...) eg:CUR_DIR=$(shel...

2018-08-15 18:14:38 8405 3

转载 802.1ag CFM/802.3ah EFM OAM/Y.1731 ETH OAM学习笔记

相关协议:1)IEEE 802.1ag 连通性故障管理(CFM:Connectivity Fault Management)2)IEEE 802.3ah 第一英里的以太网(EFM:Ethernet in the First Mile),其中第57章的以太网OAM3)ITU-T Y.1731 以太网OAM(Operation, Administration and Maintenance) 以太网O...

2018-06-06 15:45:58 3855 1

转载 RSA算法和RSA数字签名算法

一、引言 随着网络技术的飞速发展,信息安全性已成为亟待解决的问题。公钥密码体制中,解密和加密密钥不同,解密和加密可分离,通信双方无须事先交换密钥就可建立起保密通信,较好地解决了传统密码体制在网络通信中出现的问题。另外,随着电子商务的发展,网络上资金的电子交换日益频繁,如何防止信息的伪造和欺骗也成为非常重要的问题。数字签名可以起到身份认证、核准数据完整性的作用。目前关于数字签名的研究主要集中基于公钥...

2018-03-07 15:47:49 35371 5

转载 数字签名是什么

今天,我读到一篇好文章。它用图片通俗易懂地解释了,"数字签名"(digital signature)和"数字证书"(digital certificate)到底是什么。我对这些问题的理解,一直是模模糊糊的,很多细节搞不清楚。读完这篇文章后,发现思路一下子就理清了。为了加深记忆,我把文字和图片都翻译出来了。文中涉及的密码学基本知识,可以参见我以前的笔记。数字签名:将报文按双方约定...

2018-03-07 13:07:06 765

转载 字节序(byte order)和位序(bit order)

字节序(byte order)和位序(bit order) 在网络编程中经常会提到网络字节序和主机序,也就是说当一个对象由多个字节组成的时候需要注意对象的多个字节在内存中的顺序。  以前我也基本只了解过字节序,但是有一天当我看到ip.h中对IP头部结构体struct iphdr的定义时,我发现其中竟然对一个字节中的8个比特位也区分了大小端,这时我就迷糊了,不是说大小端只有在多个字节之间

2018-01-10 20:05:01 7002 3

转载 RPC介绍

简介RPC(Remote Procedure Call,远程过程调用)是建立在Socket之上的,出于一种类比的愿望,在一台机器上运行的主程序,可以调用另一台机器上准备好的子程序,就像LPC(本地过程调用)。越底层,代码越复杂、灵活性越高、效率越高;越上层,抽象封装的越好、代码越简单、效率越差。Socket和RPC的区别再次说明了这点。在传统的编程概念中,过程是由程序员在本地编译完成,并只能局

2017-10-27 18:08:53 1265

转载 clnt_call(3) - Linux man page

Namerpc - library routines for remote procedure callsSynopsis And DescriptionThese routines allow C programs to make procedure calls on other machines across the network. First, the client

2017-10-23 12:38:50 1758

原创 About AF_LOCAL in Linux

About AF_LOCAL in Linux一、Unix domain socket Unix domain socket或者IPC socket是一种终端,可以使同一台操作系统上的两个或多个进程进行数据通信。与管道相比,Unix domain sockets 既可以使用字节流,又可以使用数据队列,而管道通信则只能使用字节流。Unix domain sockets的接口

2017-08-15 20:49:11 5556 4

原创 AF_NetLink结构体及例程

AF_NetLink结构体目录一、AF_NETLINK结构体基础...1二、 netlink 内核数据结构、常用宏及函数...4netlink消息类型:...4netlink常用宏:...4三、例二:读取内核路由信息...5四、例三:自定义通信协议...6  一、AF_NETLINK结构体基础我们从一个实际的数据包发送的例子入手,

2017-08-13 22:18:18 2655

原创 About AF_NETLINK in Linux Socket

About AF_NETLINK in Linux Socket由于开发和维护内核的复杂性,只把最为关键同时对性能要求最高的代码放进内核中。其他的诸如GUI,管理和控制代码,通常放在用户空间运行。这种将实现分离在内核和用户空间的思想在Linux中非常常见。现在的问题是内核代码和用户代码如何交互通信。答案是内核空间和用户空间存在的各种IPC方法,例如系统调用、ioctl、proc文件系统和n...

2017-08-13 22:14:16 6406

转载 Linux/Unix环境下的make和makefile详解

  Linux/Unix环境下的make和makefile详解             无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或make install。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make和makef...

2017-07-11 19:42:32 1019

原创 有关虚拟专用局域网业务VPLS的总结

**************************************************************************************************************************LDP摘要:Label Distribution Protocol*******************************MPLS使用

2017-06-25 11:59:36 4184

原创 Contiki中MAC层与RDC层

原英文文章:https://github.com/contiki-os/contiki/wiki/Change-mac-or-radio-duty-cycling-protocols在Contiki中,MAC层源码位于core\net\mac目录下。       在低功耗网络中,无线收发设备必须时常休眠以节省电量。在Contiki中,负责这个工作的是RDC(Radio Duty C

2017-01-16 16:55:40 2024

翻译 The ContikiMAC Radio Duty Cycling Protocol

The ContikiMAC Radio DutyCycling ProtocolRDC机制之ContikiMAC协议 目录摘要...21 介绍...22 ContikiMAC..32.1 ContikiMAC时序...42.2 包检测和快速睡眠...62.3锁相传输...73. 实现...84. 评估...94.1

2017-01-16 16:51:56 886

翻译 RFC 6719中文版: The Minimum Rank with Hysteresis Objective Function

RFC 6719 The Minimum Rank with Hysteresis ObjectiveFunctionRFC 6719 具有磁滞特性的基于最低排名的一种目标函数 概述RPL通过目标函数建立路由,该目标函数可以优化或是约束它所选择和使用的路由。本规范描述的MRHOF,一种目标函数,选择最小化一种度量的路由,同时,使用磁滞特性降低由于小幅度度量改变引起的剧烈抖动。MRH

2017-01-04 20:42:36 1198

转载 C++中引用(&)的用法和应用实例

对于习惯使用C进行开发的朋友们,在看到c++中出现的&符号,可能会犯迷糊,因为在C语言中这个符号表示了取地址符,但是在C++中它却有着不同的用途,掌握C++的&符号,是提高代码执行效率和增强代码质量的一个很好的办法。在 c++学习提高篇(3)---隐式指针的文章中我详细介绍了在隐式指针&的用法,其实这两个概念是统一的。引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确、

2016-10-29 10:54:10 408

转载 C++ 虚函数&纯虚函数&抽象类&接口&虚基类

1. 多态在面向对象语言中,接口的多种不同实现方式即为多态。多态是指,用父类的指针指向子类的实例(对象),然后通过父类的指针调用实际子类的成员函数。多态性就是允许将子类类型的指针赋值给父类类型的指针,多态是通过虚函数实现的。多态可以让父类的指针有“多种形态”,这是一种泛型技术。(所谓泛型技术,就是试图使用不变的代码来实现可变的算法)。实际上,多态包括动态多态和静

2016-10-26 19:39:53 577

原创 C语言中关于字符数组和指针数组

做笔试题目的时候,碰到字符数组初始化的问题,居然一下子懵了。在C语言中存储字符串有两种方法:字符数组和字符串指针这两者的存储位置不同,首先字符数组(局部变量)是保存在栈中的;指针指向字符串时,则包括了两部分,指针本身,存储在栈中(局部指针变量),字符串本身存储在代码段(GCC中是这样)。基于上面一点就会产生很多不同,比如后者存在代码段是肯定不能被修改的,当然也不能作为strcpy等函数

2016-10-21 20:04:27 1572

原创 C++中虚析构函数

虚函数、析构函数和虚析构函数,以及基类指针指向子类对象,这些有点让人迷惑。首先虚函数是为了实现动态多态性而存在的,用基类指针或是引用指向子类对象时,调用的是子类中的虚函数,而不是基类中的;如果不是虚函数,那么进行类型分割,将子类转变成基类对象,此时执行的就是基类中的函数。(如下面第二段代码所示)析构函数,在一般情况下(基类指针指向基类对象,子类指针指向子类对象),此时析构函数的调用与构造函

2016-10-18 11:46:25 407

原创 C语言之strcat函数

原本以为很简单的一个例子,结果让我郁闷了一个上午虽然这个知识点也懂,但还是在实践中犯了错,一个上午的时间,多么痛的领悟啊

2016-08-23 14:13:01 1156

原创 C语言之优先级、结合性与自增运算

     优先级、结合性这些概念在初学的时候并没有放在心上,今天又碰到这个问题,查了不少资料,再次做个总结。 在标准C语言的文档里,对操作符的结合性并没有做出非常清楚的解释。一个满分的回答是:它是仲裁者,在几个操作符具有相同的优先级时决定先执行哪一个。每个操作符拥有某一级别的优先级,同时也拥有左结合性或右结合性。优先级决定一个不含括号的表达式中操作数之间的“紧密”程度。例如,在表达式a...

2016-08-18 21:08:53 4476 2

转载 Linux下突破限制实现高并发量服务器

Linux下突破限制实现高并发量服务器1、修改用户进程可打开文件数限制在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数 量都要受到系统对用户单一进程同时可打开文件数量的 限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。可使用ulimit命令查看系统允许当前用户进程

2016-07-26 20:32:54 5676

原创 linux 网络编程之服务器多线程限制

本文讨论服务器端多线程并发的操作和限制:基于实验结果和百度结果:实验基础:服务器和客户端,服务器为每个客户端连接开辟线程,验证服务器多线程的最大支持数目实验环境:ubuntu 12.04实验结果:   1、一切系统默认设置的情况下,最多接收了381个链接,也即开启了381个线程。实验总结:一、及时回收线程资源默认情况下,线程的资源是在主线程结束时才会被回收,在线程结束时

2016-07-26 20:20:25 4640

原创 linux网络编程之简单的服务器多线程

服务器&客户端demo最近两天了linux的网络编程,自己写了一个demo,熟悉socket的几个主要API的用法:虚拟机下的ubuntu 14.04 OS,程序包括:客户端:发送连接请求;一旦连接建立,将用户输入的信息发送给服务器;输入end,客户端程序退出服务器端:建立监听端口;接收连接请求;为每个请求创建一个线程,接收客户端的信息并打印。服务器端程序:#inc

2016-07-26 18:12:26 4410

转载 linux之top命令

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。下面详细介绍它的使用方法。top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombi

2016-07-25 10:25:16 521

转载 嵌入式软件工程师常见笔试题

> 预处理器(Preprocessor)1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL我在这想看到几件事情:1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)2). 懂得预处理器将为你计算常数表达式的值,因

2016-07-06 20:56:21 3233 3

原创 Linux之文件类型和权限的获取与操作

最近两天学习了有关文件属性的获取和操作,下面是在学习过程中的一个例程。Linux中有关文件属性的信息存储在struct stat这个结构体中: struct stat { dev_t st_dev; /* ID of device containing file */ ino_t st_ino; /

2016-07-06 13:19:18 2247

原创 C语言之可变参数

可变参数总结:可变参数的函数原理其实很简单,是以宏定义来实现的,其实现跟堆栈相关。我们写一个可变函数的C函数时,有利也有弊,所以在不必要的场合,我们无需用到可变参数。如果在C++里,我们应该利用C++的多态性来实现可变参数的功能,尽量避免用C语言的方式来实现。零、C函数调用的栈结构   可变参数函数的实现与函数调用的栈结构密切相关,正常情况下C的函数参数入栈规则为__stdcall,

2016-06-23 17:29:21 498

原创 C语言之memcpy函数

昨天自己动手实现memcpy这个函数,用一个例程试了一下,结果正确,满心欢心,可是有些地方想不明白,于是百度了一下,结果自己写的函数简直无法直视。觉得还是写个总结,以示教训。先贴上我自己的函数:char *mymemcpy(char *dest, const char * src, int n){ char *pdest; char *psrc;

2016-06-17 13:42:54 53059 6

lwip嵌入式tcpip协议栈详解,pdf带目录,老衲五木

lwip网络协议栈; 嵌入式网络协议栈入门材料; 出自老衲五木;

2022-02-05

粒子群算法解决TSP问题

粒子群算法解决旅行商问题,c++实现,完整源代码,可直接运行

2015-06-20

zigbee无线网络和收发器 译文 mac部分

zigbee无线网络和收发器一书的MAC部分的译文,主要介绍了802.15.4协议的mac层

2015-04-10

zigbee网络建立与加入

TI公司推出的zigbee协议栈,介绍了网络的建立过程,并对节点加入网络做了分析,对代码进行了详细的说明

2015-02-19

zigbee开发工具使用说明

zigbee开发环境安装说明,zigbee协议栈安装说明以及仿真器使用和驱动程序安装说明

2014-10-17

ZigBee.Wireless.Networks.and.Transceivers

zigbee无线网络和收发器 被称作zigbee领域的葵花宝典,全书虽为英文,但读起来也并不困难,通俗易懂,结构清晰

2014-07-23

计算机专业英语

计算机专业的必备英语知识,还附有最新计算机领域的新动态

2012-11-09

空空如也

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

TA关注的人

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