自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (8)
  • 收藏
  • 关注

原创 爬虫 京东登录协议分析

最近在研究京东登录的协议,这里简单记录下分析过程京东登录的流程可分解如下:请求登录界面(url是京东-欢迎登录 (jd.com)) 输入用户名密码 点击登录 滑块验证码验证 登录成功协议报文分析用Fiddler抓包,这里直接从最后一步登录作为切入点 登录请求 从抓包中可以明显发现登录的请求url是:https://passport.jd.com/uc/loginService请求的报文如下一个个字段来看看:uuid:可以在登录页面请求中得到r:是一个时间戳,写

2021-05-12 15:46:56 3877 4

转载 很好的创业文章

何为“屌丝”,“屌丝”大多出身贫寒之家,穷,是屌丝最显著的特征,没有很多的社会关系,只能靠自己,内心非常渴望成功,屌丝二字蕴含着无奈与自嘲的意味, 亦为“苦B青年”。如果你很有钱,或者有个李刚样的爸爸,那以下这些都不成问题。但是作为屌丝,选择创业这条路,那真是如唐僧西天取经一样,需要经过很多难,本人就是屌丝一个,比较有感触。 1.你家庭压力大吗?  不管怎么样,我认为家庭是最重

2013-04-22 13:50:00 731

转载 事务和锁

事务事务定义了一组SQL命令的边界,这组命令或者作为一个整体被全部执行,或者都不执行。事务的典型实例是转帐。事务的范围 事务由3个命令控制:BEGIN、COMMIT和ROLLBACK。BEGIN开始一个事务,之后的所有操作都可以取消。COMMIT使BEGIN后的所有命令得到确认;而ROLLBACK还原BEGIN之后的所有操作。如: sqlite> BEGIN;

2013-04-18 16:05:24 2611

转载 Source Insight 常用设置和快捷键大全

随笔- 195  文章- 3  评论- 15  Source Insight 常用设置和快捷键大全1.括号配对高亮:“在前括号左侧,后括号左侧” 双击鼠标左键,可以选定匹配括号和其中内容( 2.让{ 和 } 不缩进:Options -> Document Options -> Auto Indenting -> Auto Inde

2013-04-11 15:38:46 2077

转载 Linux中重定向及管道

Linux中重定向及管道1重定向1.1      重定向符号>               输出重定向到一个文件或设备 覆盖原来的文件>!              输出重定向到一个文件或设备 强制覆盖原来的文件>>             输出重定向到一个文件或设备 追加原来的文件1.2标准错误重定向符号2>             将一个标准

2013-04-10 16:58:59 619

转载 IPC通信:Posix信号灯

IPC通信:Posix信号灯  信号灯用来实现同步——用于多线程,多进程之间同步共享资源(临界资源)。信号灯分两种,一种是有名信号灯,一种是基于内存的信号灯。有名信号灯,是根据外部名字标识,通常指代文件系统中的某个文件。而基于内存的信号灯,它主要是把信号灯放入内存的,基于内存的信号灯,同步多线程时,可以放到该多线程所属进程空间里;如果是同步多进程,那就需要把信号灯放入到共享内存

2013-04-09 10:32:50 1360

转载 IPC通信:Posix共享内存1

IPC通信:Posix共享内存1  共享内存区是最快的可用IPC形式。它允许多个不相关的进程去访问同一部分逻辑内存。如果需要在两个运行中的进程之间传输数据,共享内存将是一种效率极高的解决方案。一旦这样的内存区映射到共享它的进程的地址空间,这些进程间数据的传输就不再涉及内核。这样就可以减少系统调用时间,提高程序效率  共享内存是由IPC为一个进程创建的一个特殊的地址范围,它将

2013-04-09 10:30:15 625

转载 IPC通信:Posix共享内存2

IPC通信:Posix共享内存2Posix共享内存区涉及两个步骤:1、指定一个名字参数调用shm_open,以创建一个新的共享内存区对象或打开一个以存在的共享内存区对象。2、调用mmap把这个共享内存区映射到调用进程的地址空间。传递给shm_open的名字参数随后由希望共享该内存区的任何其他进程使用。相关函数: 1 shm_open()函数 2 功能:

2013-04-09 10:29:06 650

转载 一些SQLite技巧

SQLite自增ID自段使用方法为 INTEGER PRIMARY KEY AUTOINCREMENT如:CREATE TABLE 21andy ( id INTEGER PRIMARY KEY AUTOINCREMENT, 21andy VARCHAR(100) NOT NULL, date DATE ); 注意是AUTOINCREMENT, 和MySQL的写法不一样

2013-03-29 21:49:07 1052

转载 tcpdump的使用

例:tcpdump host 172.16.29.40 and port 4600 -X -s 500tcpdump采用命令行方式,它的命令格式为:  tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ]          [ -i 网络接口 ] [ -r 文件名] [ -s snaplen ]          [ -T 类型 ]

2013-03-28 13:39:25 583

转载 共享内存

共享内存是系统出于多个进程之间通讯的考虑,而预留的的一块内存区。在/proc/sys/kernel/目录下,记录着共享内存的一些限制,如一个共享内存区的最大字节数shmmax,系统范围内最大共享内存区标识符数shmmni等,可以手工对其调整,但不推荐这样做。一、应用共享内存的使用,主要有以下几个API:ftok()、shmget()、shmat()、shmdt()及shmctl()。1

2013-03-28 10:07:03 859

原创 NAT 网络地址转换学习

网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。原因很简单,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。实现方式NAT的实现方式有三

2013-03-13 10:16:50 758

转载 gcc/g++ 编译

1. gcc/g++在执行编译工作的时候,总共需要4步(1).预处理,生成.i的文件[预处理器cpp] (2).将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs] (3).有汇编变为目标代码(机器代码)生成.o的文件[汇编器as] (4).连接目标代码,生成可执行程序[链接器ld][参数详解] -x language filename     设定文件所使

2013-03-04 11:12:51 606

转载 source insight快捷键及使用技巧

source insight快捷键及使用技巧 退出程序                             : Alt+F4重画屏幕                             : Ctrl+Alt+Space完成语法                             : Ctrl+E复制一行

2013-02-27 14:08:58 313

转载 makefile 学习

最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。            于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。           后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比较好理解

2013-02-06 10:49:08 437

转载 __attribute__ 学习笔记

1. __attribute__ GNU C的一大特色(却不被初学者所知)就是__attribute__机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)__attribute__前后都有两个下划线,并且后面会紧跟一对原括弧,括弧里面是相应的__attrib

2013-02-05 13:44:34 335

转载 select函数总结

select函数总结阻塞方式block,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回。使用Select就可以完成非阻塞non-block,就是进程或线程执行此函数时不必非要等待事件的发生,一旦执行肯定返回,以返回值的不同来反映函数的执行情况,如果事件发生则与阻塞方式相同,若事件没有发生则返回一个代码来告知事件未发

2013-01-31 15:40:49 441

转载 sizeof() 用法

sizeof()用法汇总sizeof()功能:计算数据空间的字节数1.与strlen()比较      strlen()计算字符数组的字符数,以"\0"为结束判断,不计算为'\0'的数组元素。      而sizeof计算数据(包括数组、变量、类型、结构体等)所占内存空间,用字节数表示。2.指针与静态数组的sizeof操作      指针均可看为变量类型

2013-01-18 15:21:18 358

原创 ubuntu 11.10 环境变量

今天学习了下ubuntu的环境变量设置。主要涉及到以下五个文件:(一) /etc/environment    系统环境变量,系统启动时加载,对任意用户有效(二) /etc/profile    全局用户环境变量,系统启动时加载,对任意用户有效(三) /etc/bash.bashrc    为每一个运行bash shell的用户执行此文件,当bash shell被打开时,该文件被读

2012-10-30 14:46:22 619

原创 c语言typedef 与 #define

typedef作为类型定义关键字,用于在原有数据类型(包括基本类型、构造类型和指针等)的基础上,由用户自定义新的类型名称。在编程中使用typedef的好处,除了为变量取一个简单易记且意义明确的新名称之外,还可以简化一些比较复杂的类型声明。比如:         typedef    int    INT32;将INT32定义为与int具有相同意义的名字,这样类型INT32就可用于类型声明和

2012-10-09 16:13:10 762

原创 大小端 网络字节序

定义如下:a) Little-Endian就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。b) Big-Endian就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。c) 网络字节序:TCP/IP各层协议将字节序定义为Big-Endian,因此TCP/IP协议中使用的字节序通常称之为网络字节序。我们以0x12345678为例:

2012-09-26 14:17:22 530

转载 c语言详解sizeof

一、sizeof的概念    sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。    它并不是函数。    sizeof操作符以字节形式给出了其操作数的存储大小。    操作数可以是一个表达式或括在括号内的类型名。    操作数的存储大小由操作数的类型决定。    二、sizeof的使用方法    1、用于数据类型

2012-08-15 13:46:26 1219

原创 c语言extern详解

(1)变量extern int a;//声明一个全局变量aint a; //定义一个全局变量aextern int a =0 ;//定义一个全局变量a 并给初值。int a =0;//定义一个全局变量a,并给初值,        定义只能出现在一处。不管是int a;还是extern int a=0;还是int a=0;都只能出现一次,而那个extern int

2012-08-08 14:58:20 806

转载 C语音static详解

一、c程序存储空间布局(1) 栈 由编译器自动分配释放管理。局部变量及每次函数调用时返回地址、以及调用者的环境信息(例如某些机器寄存器)都存放在栈中。新被调用的函数在栈上为其自动和临时变量分配存储空间。通过以这种方式使用栈,C函数可以递归调用。递归函数每次调用自身时,就使用一个新的栈帧,因此一个函数调用实例中的变量集不会影响另一个函数调用实例中的变量。    a.局部变量

2012-08-08 14:43:21 1060

转载 H264 RTP打包类、解包类

H264 RTP打包类、解包类,实现了单个NAL单元包和FU_A分片单元包。对于丢包处理,采用简单的策略:丢弃随后的所有数据包,直到收到关键帧。测试效果还不错,代码贴上来,若能为同道中人借鉴一二,足矣。两个类的使用说明如下(省略了错误处理过程): DWORD H264SSRC ; CH264_RTP_PACK pack ( H264SSRC ) ; BYTE *pVideoData

2012-07-09 17:12:23 2354

原创 jrtplib 3.9.1 交叉编译 linux arm

下面是具体步骤:1.修改CMakeList.txt,以生成交叉编译的makefile。打开jthread1.3.1目录中的CMakeList.txt,在开头加入下面几句话        #告知当前使用的是交叉编译方式  SET(CMAKE_SYSTEM_NAME Linux)  #设置c编译器  SET(CMAKE_C_COMPILER "arm-none-linux-gn

2012-07-06 17:12:09 3037

原创 windows 下编译 jrtplib-3.9.1 和 jthread-1.3.1

第一步,先下载三个必要的文件:1.下载 jrtplib-3.9.1:http://research.edm.uhasselt.be/~jori/page/index.php?n=CS.Jrtplib2.下载 jthread-1.3.1:http://research.edm.uhasselt.be/~jori/page/index.php?n=CS.Jthread

2012-06-18 15:55:23 3302

原创 H264 RTP 封包原理

1.NAL概述    NAL全称Network Abstract Layer,即网络抽象层。在H.264/AVC视频编码标准中,整个系统框架被分为了两个层面:视频编码层面(VCL)和网络抽象层面(NAL)。其 中,前者负责有效表示视频数据的内容,而后者则负责格式化数据并提供头信息,以保证数据适合各种信道和存储介质上的传输。    现实中的传输系统是多样化的,其可靠性,服务质量,

2012-05-30 15:06:47 7241

转载 如何使用SOCKET 发送HTTP1.1 GET POST请求包

如何使用SOCKET 发送HTTP1.1 GET POST请求包 HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的。HTTP有两类报文:请求报文和响应报文。请求报文一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成,下图给出了请求报文的一般格式。  (1)请求行请求行

2012-05-29 08:57:07 737

原创 ubuntu下编译 jrtplib-3.9.1 和 jthread - 1.3.1

一、首先,先下载三个必要的文件:1.下载 jrtplib-3.9.1:http://research.edm.uhasselt.be/~jori/page/index.php?n=CS.Jrtplib2.下载 jthread-1.3.1:http://research.edm.uhasselt.be/~jori/page/index.php?n=CS.Jthread3.由于

2012-05-28 14:14:51 2699 1

转载 TCP /IP UDP socket 之间的联系

对TCP/IP、UDP、Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵。那么我想问:1.         什么是TCP/IP、UDP?2.         Socket在哪里呢?3.         Socket是什么呢?4.         你会使用它们吗?什么是TCP/IP、UDP?         TCP/IP(Trans

2012-05-24 16:48:07 791

转载 socket网络编程

“一切皆Socket!话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型有哪些?还有socke

2012-05-24 16:27:38 668

原创 关于字节对齐

现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。一.对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。比如有些架构的CP

2012-05-24 14:08:25 523

转载 RTP协议详解

RTP协议分析第1章.     RTP概述1.1.  RTP是什么RTP全名是Real-time Transport Protocol(实时传输协议)。它是IETF提出的一个标准,对应的RFC文档为RFC3550(RFC1889为其过期版本)。RFC3550不仅定义了RTP,而且定义了配套的相关协议RTCP(Real-time Transport Control Protocol,

2012-05-21 16:01:27 877

转载 HTTP协议详解

引言                                            HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generat

2012-05-21 15:55:15 724

基于rtp的h264视频流传输源码

基于rtp的h264视频流传输源码,用vlc来播放

2012-05-31

jthread 1.3.1

配合jrtplib使用 ,最新的进程库 ,用于rtp协议实现

2012-05-31

jrtplib 3.9.1

jrtplib 多媒体流传输 rtp协议实现库

2012-05-31

cmake 2.8.1

cmake 软件 用于生成工程文件,自动生成makefile 非常实用的软件

2012-05-31

自己开发的很小很实用的串口工具

自己开发的很小很实用的串口工具,不到20kb的大小,基本功能都有,串口开发必备

2012-05-21

LM3s9b92 中文文档

非谷歌翻译,超详细 Cortex m3 lm3s9b92 中文 数据手册 data sheet

2012-04-27

空空如也

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

TA关注的人

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