摘要: 出处信息感谢网友full_of_bull投递此文(注:此文最初发表在这个这里,我对原文后半段修改了许多,并加入了插图)Linus大婶在slashdot上回答一些编程爱好者的提问,其中一个人问他什么样的代码是他所喜好的,大婶表述了自己一些观点之后,举了一个指针的例子,解释了什么才是core low-level coding。下面是Linus的教学原文及翻译——“At the opposite end of the spectrum, I actually wish more people understood the really core low-level kind of coding. N 阅读全文
posted @ 2013-08-30 11:48 tangr206 阅读(298) 评论(0) 推荐(1) 编辑
摘要: 同步中的常见的错误和处理1、现象:在从库上面show slave status\G;出现下列情况, Slave_IO_Running: Yes Slave_SQL_Running: No Seconds_Behind_Master: NULL原因:a.程序可能在slave上进行了写操作;b.也可能是slave机器重起后,事务回滚造成的;c.有可能是在同步过程中遇到某种错误,这个会在查看从库中状态时看到错误提示,最少见的就是主键重复1062的错误。解决方法:进入mastermysql> show master status;+----------------------+--------- 阅读全文
posted @ 2013-08-12 09:46 tangr206 阅读(712) 评论(0) 推荐(0) 编辑
摘要: 高性能Mysql主从架构的复制原理及配置详解分类:MySQLPHP2012-03-06 07:465791人阅读评论(1)收藏举报目录(?)[-]复制概述mysql支持的复制类型复制解决的问题复制如何工作复制配置创建复制帐号拷贝数据配置master配置slave启动slave添加新slave服务器深入了解复制基于语句的复制Statement-Based Replication基于记录的复制Row-Based Replication复制相关的文件1mysql-binindex2mysql-relay-binindex3masterinfo4relay-loginfo发送复制事件到其它slave复 阅读全文
posted @ 2013-07-26 20:41 tangr206 阅读(359) 评论(0) 推荐(1) 编辑
摘要: 第3节 Internet传输协议-TCPTCP/IP体系中的传输层6.5.1TCP介绍TCP的序列号和确认号6.5.5 TCP的连接建立和释放三次握手的建立连接过程TCP 连接释放6.5.7 TCP连接的管理模型6.5.8 TCP的传输策略基于确认和可变窗口大小;窗口大小为0时,正常情况下,发送方不能再发送TCP段,但有两个例外: 紧急数据可以发送; 为防止死锁,发送方可以发送1字节的TCP段,以便让接受方重新声明确认号和窗口大小。TCP的传输效率TCP/IP开销=20 字节TCP头 + 20字节IP头例如使用 TELNET连接, 每发送1个字节数据就要附加 40 字节的开销(41+40+40 阅读全文
posted @ 2013-06-06 22:07 tangr206 阅读(576) 评论(0) 推荐(0) 编辑
摘要: malloc,free详解Both brk() and mmap() cause pages to be mapped into the process's address space. mmap() can be used to map pages of a file into memory, but it can also be used only to map pages, i.e., allocate memory. brk() is just a specific interface to the VM subsystem which maps pages at a spec 阅读全文
posted @ 2013-05-27 20:41 tangr206 阅读(428) 评论(0) 推荐(0) 编辑
摘要: 这几天看了不少资料,这里做一个简单的总结归纳:几个不错的网站:https://computing.llnl.gov/tutorials/pthreads/http://cpp.ezbty.org/content/doc_list/libevent_%E4%BD%BF%E7%94%A8%E4%B8%8E%E6%BA%90%E7%A0%81%E5%89%96%E6%9E%90http://www.kerneltravel.net/journal/iv/syscall.htm 线程的三个主要同步原语:互斥锁,信号量和条件变量,一下简称mutex,sem,cond。 其中mutex和sem都是对应f. 阅读全文
posted @ 2013-05-25 18:51 tangr206 阅读(1061) 评论(0) 推荐(0) 编辑
摘要: http://leetcode.com/onlinejudge#question_1 1 class Solution { 2 public: 3 vector<int> twoSum(vector<int> &numbers, int target) { 4 // Start typing your C/C++ solution below 5 // DO NOT write int main() function 6 7 vector<int> result; 8 map<int, int> myma... 阅读全文
posted @ 2013-05-23 17:47 tangr206 阅读(183) 评论(0) 推荐(0) 编辑
摘要: copy_from_user函数的目的是从用户空间拷贝数据到内核空间,失败返回没有被拷贝的字节数,成功返回0.这么简单的一个函数却含盖了许多关于内核方面的知识,比如内核关于异常出错的处理.从用户空间拷贝数据到内核中时必须非常小心,如果用户空间的数据地址是个非法的地址,或是超出用户空间的范围,或是那些地址还没有被映射到,都可能对内核产生很大的影响,如oops,或者被造成系统安全的影响.所以copy_from_user函数的功能就不只是从用户空间拷贝数据那样简单了,它还要做一些指针检查以及处理这些问题的方法.下面我们来仔细分析下这个函数.函数原型在[arch/i386/lib/usercopy.c 阅读全文
posted @ 2013-05-22 10:39 tangr206 阅读(912) 评论(0) 推荐(0) 编辑
摘要: strace 用法: -f :除了跟踪当前进程外,还跟踪其子进程。 -o file :将输出信息写到文件file中,而不是显示到标准错误输出(stderr)。 -p pid :绑定到一个由pid对应的正在运行的进程。此参数常用来调试后台进程。 用处: 查看别的命令或进程都进行了哪些系统调用。比如当前web.py进程号为7393; 用strace -p 7393 -f 等下一个客户请求过来后就可以看到webserver都干 了些什么.CP 拷贝指定文件情景:一个文件夹有各种文件:sh,log,data,py。我们只想把脚背相关的文件拷贝出来备份。解决:cp --p... 阅读全文
posted @ 2013-05-16 20:29 tangr206 阅读(320) 评论(0) 推荐(0) 编辑
摘要: 最近看了UNP,这是对服务器编程模型的笔记1.简单服务器模型(迭代) 服务器进程接受连接,处理请求,然后等待下一个连接。从进程控制的角度来说这种模型是最快的,因为没有进程间的切换,但是客户需要等待在listen中等待服务器accept。2.多进程模型 服务器进程接受连接,fork一个子进程为客户服务,然后等待下一个连接。多进程模型适用于单个客户服务需要消耗较多的 CPU 资源,例如需要进行大规模或长时间的数据运算或文件访问。多进程模型具有较好的安全性。在实现中需要注意 1.监听套接口和链接套接口的关闭时机; 2.及时处理已经结束的子进程(信号处理); 3.被中断的系统调用的恢复(... 阅读全文
posted @ 2013-05-16 16:15 tangr206 阅读(557) 评论(0) 推荐(0) 编辑