<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq2007xia的专栏]]></title><description><![CDATA[不断学习，不断积累，不断进步。]]></description><link>https://blog.youkuaiyun.com/qq2007xia</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq2007xia]]></copyright><item><title><![CDATA[digest鉴权]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/52621997</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/52621997</guid><author>qq2007xia</author><pubDate>Thu, 22 Sep 2016 13:16:56 +0800</pubDate><description><![CDATA[转自：http://blog.renren.com/share/1414450682/14622488039

“摘要”式认证（ Digest authentication）是一个简单的认证机制，最初是为HTTP协议开发的，因而也常叫做HTTP摘要，在RFC2671中描述。其身份验证机制很简单，它采用杂凑式（hash）加密方法，以避免用明文传输用户的口令。
摘要认证就是要核实，参与通信的双方]]></description><category></category></item><item><title><![CDATA[安全编码实践]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/51611080</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/51611080</guid><author>qq2007xia</author><pubDate>Wed, 08 Jun 2016 09:54:24 +0800</pubDate><description><![CDATA[转自： http://www.uml.org.cn/safe/201212174.asp






安全编码实践



 




作者：chengyun_chu，发布于2012-12-17， 来源：优快云




 







目录：
安全编码实践之一：GS编译选项和缓存溢出

安全编码实践之二：NXCOMPAT选项和数据执]]></description><category></category></item><item><title><![CDATA[九大排序算法再总结]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/44646341</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/44646341</guid><author>qq2007xia</author><pubDate>Thu, 26 Mar 2015 10:23:01 +0800</pubDate><description><![CDATA[转自：http://blog.youkuaiyun.com/xiazdong






本文是 http://blog.youkuaiyun.com/xiazdong/article/details/7304239 的补充，当年看了《大话数据结构》总结的，但是现在看了《算法导论》，发现以前对排序的理解还不深入，所以打算对各个排序的思想再整理一遍。
本文首先介绍了基于比较模型的排序算法，即最坏复杂度都在Ω]]></description><category></category></item><item><title><![CDATA[常见排序算法小结]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/44646311</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/44646311</guid><author>qq2007xia</author><pubDate>Thu, 26 Mar 2015 10:19:16 +0800</pubDate><description><![CDATA[转自：http://blog.youkuaiyun.com/whuslei/article/details/6442755

排序算法经过了很长时间的演变，产生了很多种不同的方法。对于初学者来说，对它们进行整理便于理解记忆显得很重要。每种算法都有它特定的使用场合，很难通用。因此，我们很有必要对所有常见的排序算法进行归纳。

     我不喜欢死记硬背，我更偏向于弄清来龙去脉，理解性地记忆。比如下面这张]]></description><category></category></item><item><title><![CDATA[“bind failed on XXXX: Address already in usr”问题]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/41045825</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/41045825</guid><author>qq2007xia</author><pubDate>Wed, 12 Nov 2014 16:51:37 +0800</pubDate><description><![CDATA[今天调试一个http服务的时候，发现服务重启时，]]></description><category></category></item><item><title><![CDATA[linux install 命令]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/40888633</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/40888633</guid><author>qq2007xia</author><pubDate>Fri, 07 Nov 2014 09:56:28 +0800</pubDate><description><![CDATA[install 
1.作用 
install命令的作用是安装或升级软件或备份数据，它的使用权限是所有用户。 
2.格式 
(1)install [选项]... 来源 目的地 
(2)install [选项]... 来源... 目录 
(3)install －d [选项]... 目录... 
在前两种格式中，会将复制至或将多个文件复制至已存在的，同时设定权限模式及所有者/所属组。在第三]]></description><category></category></item><item><title><![CDATA[嵌入式linux自动挂载U盘]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/40740803</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/40740803</guid><author>qq2007xia</author><pubDate>Mon, 03 Nov 2014 14:49:40 +0800</pubDate><description><![CDATA[hotplug+mdev机制实现U盘自动挂载、卸载
【背景1】
  自动挂载磁盘分区的操作从底层来说，是要内核支持的，2.6 内核的sysfs 虚拟文件系统就提供了这一支持，这个文件系统 (/sys/) 通常用于
反应系统硬件信息，总线上的设备变化、网络设备的变化等事件在这里都能反应出来，这个文件系统的变化配合上内核的 hotplug 机制就可以
掌握硬件改动相关的信息。


  说]]></description><category></category></item><item><title><![CDATA[一个关于UDP socket服务端接收长度不正确的问题]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/40684961</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/40684961</guid><author>qq2007xia</author><pubDate>Sat, 01 Nov 2014 21:10:12 +0800</pubDate><description><![CDATA[最近项目需要实现一个通过UDP协议和远端服务平台通讯的需求，简要描述如下：
本端为嵌入式linux路由器（udp客户端，linux C编码），远端为租用的阿里云服务器（udp服务端，java编码），
通信协议为UDP，本端会定时向远端服务器发送消息。

在实现和调试过程中发现一个问题：
1）将远端服务程序放在实验室pc机上调试没有问题，即“路由器-PC”交互正常。
2）将远端服务程序放]]></description><category></category></item><item><title><![CDATA[linux文件系统类型及mount]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/40624041</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/40624041</guid><author>qq2007xia</author><pubDate>Thu, 30 Oct 2014 18:08:26 +0800</pubDate><description><![CDATA[1. 查看系统所支持的文件系统的方法
1.1 通过命令查看
   mount
   df
   fdisk
   file
   parted
   fstab


1.2 通过系统文件查看 
   cat /proc/filesystems
   ls /lib/modules/2.6.x/kernel/fs
   
   例如，
   # ls /lib/modu]]></description><category></category></item><item><title><![CDATA[linux嵌入式系统下实现U盘、SD卡自动挂载功能]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/40617451</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/40617451</guid><author>qq2007xia</author><pubDate>Thu, 30 Oct 2014 11:43:11 +0800</pubDate><description><![CDATA[在 Linux的嵌入式系统中我们经常用到U盘、SD卡的挂载，而每次都手动挂载或卸载非常麻烦，我们可以采取以下方法实现自动挂载或卸载U盘、SD卡

这就要用到mdev了

其具体操作如下：


1、首先在/etc/init.d/rsC中加入以下语句

echo /sbin/mdev > /proc/sys/kernel/hotplug





2、在/etc/下简历m]]></description><category></category></item><item><title><![CDATA[Linux 编程 之 【socket】 getaddrinfo]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/40380675</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/40380675</guid><author>qq2007xia</author><pubDate>Wed, 22 Oct 2014 19:07:58 +0800</pubDate><description><![CDATA[【说明】
  包含头文件：
  #include
  
  函数原型：
  int getaddrinfo( const char *hostname, const char *service, const struct addrinfo *hints, struct addrinfo **res );
  
  参数说明：
  hostname    一个主机名或者地址串(IPv]]></description><category></category></item><item><title><![CDATA[Linux 编程之 【socket】 udp]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/39932793</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/39932793</guid><author>qq2007xia</author><pubDate>Thu, 09 Oct 2014 16:16:18 +0800</pubDate><description><![CDATA[【说明】
1）select用法
2）udp客户端bind用法
   tcp客户端调用bind是没有任何意义的，因为connect中已包括bind客户端地址和端口的操作，即使执行bind也会被connect覆盖。
   udp客户端可以通过bind绑定本地地址和端口，其中，注意绑定 INADDR_ANY 地址 和 0 端口的用法。
   分别代表由内核分配地址和端口，效果相当于未调用bin]]></description><category></category></item><item><title><![CDATA[另眼看HTTP的GET与POST]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/39315031</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/39315031</guid><author>qq2007xia</author><pubDate>Tue, 16 Sep 2014 11:52:04 +0800</pubDate><description><![CDATA[之前接触http的机会不多，最近遇到一个需要用c语言实现http交互的问题，因此，就上网学习一下相关文章。
    关于http的GET与POST方法的区别，网上有很多文章介绍，这里我也推荐两篇很不错的博文：
    http://blog.youkuaiyun.com/darxin/article/details/4944225     点击打开链接
    http://blog.youkuaiyun.com/]]></description><category></category></item><item><title><![CDATA[５分钟搞定内存字节对齐]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/39204673</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/39204673</guid><author>qq2007xia</author><pubDate>Thu, 11 Sep 2014 11:57:51 +0800</pubDate><description><![CDATA[写出一个struct,然后sizeof,你会不会经常对结果感到奇怪?sizeof的结果往往都比你声明的变量总长度要大,这是怎么回事呢?讲讲字节对齐吧.

 

/******************************分割线

如果体系结构是不对齐的，A中的成员将会一个挨一个存储，从而sizeof(a)为11。显然对齐更浪费了空间。那么为什么要使用对齐呢？
体系结构的对齐和不对齐]]></description><category></category></item><item><title><![CDATA[linux 编程SOCKET(经典)]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/39204323</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/39204323</guid><author>qq2007xia</author><pubDate>Thu, 11 Sep 2014 11:28:11 +0800</pubDate><description><![CDATA[Linux系统编程---socket编程










1. 预备知识
1.1. 网络字节序
    我们已经知道，内存中的多字节数据相对于内存地址有大端和小端之分，磁盘文件中的多字节数据相对于文件中的偏移地址也有大端小端之分。网络数据流同样有大端小端之分，那么如何定义网络数据流的地址呢？发送主机通常将发送缓冲区中的数据按内存地址从低到高的顺序发出，接收主机把从网络]]></description><category></category></item><item><title><![CDATA[tcp socket发送缓冲区、接受缓冲区、滑动窗口协议之间的关系]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/39030737</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/39030737</guid><author>qq2007xia</author><pubDate>Wed, 03 Sep 2014 18:03:30 +0800</pubDate><description><![CDATA[原文：http://webseo8.net/newsinfo.aspx?type=0&id=220&page=0    点击打开链接

对于每一个TCP的SOCKET来说，都有一个发送缓冲区和接受缓冲区与之对应，下面举个例子说说发送缓冲区、接受缓冲区、滑动窗口协议之间的关系。


一、recv端

    在监听套接字上准备accept，在accept结束以后不做什么操作，直接sle]]></description><category></category></item><item><title><![CDATA[TCP之深入浅出send和recv]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/39006169</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/39006169</guid><author>qq2007xia</author><pubDate>Tue, 02 Sep 2014 14:47:03 +0800</pubDate><description><![CDATA[本篇我们用一个测试机上的阻塞socket实例来说明主题。文章中所有图都是在测试系统上现截取的。


需要理解的3个概念

1. TCP socket的buffer
每个TCP socket在内核中都有一个发送缓冲区和一个接收缓冲区，TCP的全双工的工作模式以及TCP的流量(拥塞)控制便是依赖于这两个独立的buffer以及buffer的填充状态。接收缓冲区把数据缓存入内核，应用进程一直没]]></description><category></category></item><item><title><![CDATA[是什么影响了你的速度？802.11g]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/38984735</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/38984735</guid><author>qq2007xia</author><pubDate>Mon, 01 Sep 2014 20:14:05 +0800</pubDate><description><![CDATA[无线网络技术的发展，始终是以速率（即吞吐量）作为标志的。最早的802.11b技术，其最高速率仅为11Mbps，发展到802.11a、802.11g，最高速率达到了54Mbps，这也是当前WLAN网络的主流技术。最新的802.11n技术，其最高速率更是达到了令人瞠目的300Mbps，这足以让11n成为WLAN技术的弄潮儿，引领了WLAN技术的发展方向。
但是以上数值都是物理层的理论数据，在实际应用]]></description><category></category></item><item><title><![CDATA[DNS原理及其解析过程【精彩剖析】]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/38979883</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/38979883</guid><author>qq2007xia</author><pubDate>Mon, 01 Sep 2014 14:39:12 +0800</pubDate><description><![CDATA[原文：http://369369.blog.51cto.com/319630/812889     点击打开链接
    网络通讯大部分是基于TCP/IP的，而TCP/IP是基于IP地址的，所以计算机在网络上进行通讯时只能识别如“202.96.134.133”之类的IP地址，而不能认识域名。我们无法记住10个以上IP地址的网站，所以我们访问网站时，更多的是在浏览器地址栏中输入域名，就能看到所需要]]></description><category></category></item><item><title><![CDATA[http响应状态码大全]]></title><link>https://blog.youkuaiyun.com/qq2007xia/article/details/38979809</link><guid>https://blog.youkuaiyun.com/qq2007xia/article/details/38979809</guid><author>qq2007xia</author><pubDate>Mon, 01 Sep 2014 14:34:40 +0800</pubDate><description><![CDATA[http状态返回代码 1xx（临时响应）
表示临时响应并需要请求者继续执行操作的状态代码。

http状态返回代码 代码   说明
100   （继续） 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分，正在等待其余部分。 
101   （切换协议） 请求者已要求服务器切换协议，服务器已确认并准备切换。

http状态返回代码 2xx （成功）
表示成功处理了请求]]></description><category></category></item></channel></rss>