会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Young_For_You
博客园
首页
新随笔
联系
管理
订阅
[置顶]
mem 族函数的实现
摘要: 1.void * memcpy ( void * dest, const void * src, size_t num ); 头文件:#include <string.h>memcpy() 用来复制内存,memcpy() 会复制 src 所指的内存内容的前 num 个字节到 dest 所指的内存地址
阅读全文
posted @ 2016-05-17 11:07 _in_the_way
阅读(647)
评论(0)
推荐(0)
[置顶]
C语言字符串库函数的实现
摘要: 1.strlen(字符串的长度) 2.strcpy(字符串拷贝) 3.strncpy 4.strcat(字符串连接) 5.strncat 6.strcmp 7.strncmp
阅读全文
posted @ 2016-05-15 11:57 _in_the_way
阅读(2152)
评论(0)
推荐(0)
[置顶]
二叉搜索树
摘要: 二叉搜索树的简介: 二叉搜索树通常采取二叉链作为二叉搜索树的存储结构。中序遍历二叉排序树可得到一个关键字的有序序列,一个无序序列可以通过构造一棵二叉排序树变成一个有序序列,构造树的过程即为对无序序列进行排序的过程。每次插入的新的结点都是二叉排序树上新的叶子结点,在进行插入操作时,不必移动其它结点,只
阅读全文
posted @ 2016-05-12 12:48 _in_the_way
阅读(295)
评论(0)
推荐(0)
[置顶]
LevelDb 剖析之二 (静态结构中的磁盘上几种主要文件)
摘要: 一.Log文件 Log文件在LevelDb中的主要作用是系统故障恢复时,能够保证不会丢失数据。因为在将记录写入内存的Memtable之前,会先写入Log文件,这样即使系统发生故障,Memtable中的数据没有来得及Dump到磁盘的SSTable文件,LevelDB也可以根据log文件恢复内存的Mem
阅读全文
posted @ 2016-05-05 16:55 _in_the_way
阅读(558)
评论(0)
推荐(0)
2016年8月22日
进程池,线程池
摘要: 池的概念 由于服务器的硬件资源“充裕”,那么提高服务器性能的一个很直接的方法就是以空间换时间,即“浪费”服务器的硬件资源,以换取其运行效率。这就是池的概念。池是一组资源的集合,这组资源在服务器启动之初就完全被创建并初始化,这称为静态资源分配。当服务器进入正式运行阶段,即开始处理客户请求的时候,如果它
阅读全文
posted @ 2016-08-22 17:06 _in_the_way
阅读(2115)
评论(0)
推荐(0)
2016年8月18日
http协议
摘要: HTTP协议产生于互联网,因此服务器需要处理同时面向全世界数十万、上百万客户端的网页访问,但每个客户端(即浏览器)与服务器之间交换数据的间歇性较大(即传输具有突发性、瞬时性),并且网页浏览的联想性、发散性导致两次传送的数据关联性很低,如果按照上面的方式则需要在服务器端开的进程和句柄数目都是不可接受的
阅读全文
posted @ 2016-08-18 22:46 _in_the_way
阅读(484)
评论(1)
推荐(0)
2016年8月14日
三次握手四次挥手的原理
摘要: TCP是面向连接的,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。在TCP/IP协议中,TCP 协议提供可靠的连接服务,连接是通过三次握手进行初始化的。三次握手的目的是同步连接双方的序列号和确认号 并交换 TCP窗口大小信息。 1.第一次握手:建立连接。客户端发送连接请求报文段,将
阅读全文
posted @ 2016-08-14 15:15 _in_the_way
阅读(12420)
评论(0)
推荐(7)
2016年8月9日
mmap
摘要: 一、mmap函数的介绍 1. mmap系统调用: 将一个文件或者其它对象映射进内存。文件被映射到多个页上,如果文件的大小不是所有页的大小之和,最后一个页不被使用的空间将会清零。munmap执行相反的操作,删除特定地址区域的对象映射。 当使用mmap映射文件到进程后,就可以直接操作这段虚拟地址进行文件
阅读全文
posted @ 2016-08-09 00:17 _in_the_way
阅读(390)
评论(0)
推荐(0)
2016年8月8日
I/O多路复用之poll
摘要: poll函数和select函数非常相似,但是函数接口不一样。 #include <poll.h> int poll(struct pollfd *fdarray, unsigned long nfds, int timeout); 返回:就绪描述字的个数,0-超时,-1-出错 第一个参数是指向一个结
阅读全文
posted @ 2016-08-08 00:41 _in_the_way
阅读(414)
评论(0)
推荐(0)
2016年8月7日
I/O多路转接之select
摘要: 系统提供select函数来实现多路复⽤用输入/输出模型。select系统调用是用来让我们的程序监视 多个文件句柄的状态变化的。程序会停在select这里等待,直到被监视的文件句柄有一个或 多个发生了状态改变。关于文件句柄(socket),其实就是一个整数,我们最熟悉的句柄是0、1、2三 个,0是标准
阅读全文
posted @ 2016-08-07 22:13 _in_the_way
阅读(692)
评论(0)
推荐(0)
2016年8月5日
自旋锁、文件锁、大内核锁
摘要: 自旋锁(Spin lock)自旋锁与互斥锁有点类似,只是自旋锁不会引起调用者睡眠,如果自旋锁已经被别的执行单元保持,调用者就一直循环在那里看是 否该自旋锁的保持者已经释放了锁,"自旋"一词就是因此而得名。其作用是为了解决某项资源的互斥使用。因为自旋锁不会引起调用者睡眠,所以自旋锁的效率远 高于互斥锁
阅读全文
posted @ 2016-08-05 14:46 _in_the_way
阅读(763)
评论(0)
推荐(1)
2016年8月4日
网络基础(一)
摘要: TCP/IP通讯协议采⽤用了4层的层级结构 TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。TCP/IP协议簇 分为四层,IP位于协议簇的第二层(对应OSI的第三层),TCP位于协议簇的第三层(对应OSI 的第四层)。 TCP/IP通讯协议采⽤用了4层的层级结构,每一层都
阅读全文
posted @ 2016-08-04 10:30 _in_the_way
阅读(283)
评论(0)
推荐(0)
2016年8月3日
线程同步之(信号量)
摘要: Mutex变量是非0即1的,可看作一种资源的可用数量,初始化时Mutex是1,表示有一个可用资源, 加锁时获得该资源,将Mutex减到0,表示不再有可用资源,解锁时释放该资源,将Mutex重新加 到1,表示又有了一个可用资源。 semaphore变量的类型为sem_t,sem_init()初始化一个
阅读全文
posted @ 2016-08-03 14:20 _in_the_way
阅读(996)
评论(0)
推荐(0)
2016年8月2日
进程与线程的简单理解
摘要: 进程与线程的一个简单解释 作者: 阮一峰 日期: 2013年4月24日 作者: 阮一峰 日期: 2013年4月24日 进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。 最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。 1. 计算机
阅读全文
posted @ 2016-08-02 17:16 _in_the_way
阅读(186)
评论(0)
推荐(0)
下一页
公告