![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Thinking
文章平均质量分 54
奔跑的码仔
心有多大,舞台就有多大
展开
-
Asan基本原理及试用
Asan是Google专门为C/C++开发的内存错误探测工具,作为标配集成到了GCC 4.8及之后的版本,可以探测大多数内存问题,作为C/C++程序猿深入内存管理各种问题的迫害,人生苦短,快用Asan原创 2023-03-09 13:59:59 · 5288 阅读 · 2 评论 -
一个普通码农的Linux之路
1.Hi,大家好,我是奔跑的码仔,是一名长期混迹于Linux江湖,靠Linux吃饭的程序员。生活在一个IT大环境不好的二线城市,大家也知道,这里的程序员本来就很稀少,况且是Linux程序员呢,就更是稀有物种了!可是,不是有那么一句老话嘛,物以稀为贵。你还别说,虽然,这里的Linux岗位较少,但是,薪资总体还是蛮有竞争力的。所以,才会有时间来总结自己的Linux学习之路(不然,早就去加班挣生活费了...原创 2019-10-28 10:04:39 · 1137 阅读 · 5 评论 -
linux svn 客户端安装配置
转载自:http://5iwww.blog.51cto.com/856039/2780451、首先需要安装SVN。Ubuntu下的SVN安装十分简单,sudo apt-get install subversion,然后根据提示一步一步,就完成了SVN的安装;sudo apt-get install subversion subversion-tools上面的这种安装方式,可能会转载 2014-09-26 08:49:45 · 1477 阅读 · 0 评论 -
原码, 反码, 补码 详解
一. 机器数和真值在学习原码, 反码和补码之前, 需要先了解机器数和真值的概念.1、机器数一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1.比如,十进制中的数 +3 ,计算机字长为8位,转换成二进制就是00000011。如果是 -3 ,就是 10000011 。那么,这里的 00000011 和转载 2014-10-26 11:32:48 · 758 阅读 · 0 评论 -
我的2014
我的2014匆匆2014,时间过得好快,又是一年将要结束了。转眼间两个孩子都已经一周零四个月了,想想去年的这个时候孩子们还都在襁褓之中。回想过去的2014,主要做了以下几件事:第0件:买了房子,成了名副其实的房奴。第1件:为了生活换了一份工作。第2件:第一次基本独立完成了一个还算像样的项目。房子嘛,结了婚,有了孩子没有房子是不行了,所以不得不买了,刚性需求嘛这是不可避免的。原创 2014-12-27 22:17:18 · 772 阅读 · 0 评论 -
pjlib简介
本文主要介绍pjlib的基本特性1.PJLIB是什么? pjlib是用于构建可扩展的应用程序,基于C开发的开源的,较小footprint的架构库.由于他具有较小的footprintf,其可以应用到嵌入式应用程序中,同时基于pjlib也可以构建高性能的协议栈.2.下载 PJLIB以及所有的文档都可以在http://www.pjsip.org上获得.3.PJL翻译 2015-02-11 14:53:06 · 1994 阅读 · 5 评论 -
简论C-数组和指针
指针和数组1.指针和数组定义、区别 1.1指针和数组定义指针和数组都是C语言的精髓所在,对于很多C程序员来说,如果你问这样一个问题:数组和指针有什么区别?他们的答案很可能是:”数组和指针不是同一样东西吗,他们之间有什么区别啊?“;确实在极个别的情况下,数组和指针确实可以”通用“,但是在却大多数情况下,数组和指针是两个完全不同的C语言特性;首先,我们分别看一下,指针和数组的定义,原创 2015-12-21 21:46:20 · 806 阅读 · 0 评论 -
PJLIB 内存池实现
PJLIB内存池1.PJLIB内存池优势1.1 不用于其他的内存池实现方式,PJLIB内存池允许申请不同大小的内存空间1.2 高效率的内存分配过程,内存分配算法复杂度为O(1),这都源于其内存分配 实现简单(只需要少许指针的运算操作),而且不需要加锁.1.3 PJLIB POOL分配的内存很"纯净".PJLIB POOL不需要跟踪应用分配的独立内 存块儿,所以经原创 2016-01-09 15:34:52 · 2970 阅读 · 0 评论 -
为什么,问题在哪?
为什么真的是提笔之前内心充满了千言万语,可是到了真正想把它们写出来的时候却没有什么头绪了!噢,看看题目是《为什么》,这个“为什么”说的是什么呢?好了,不就结了,直截了当吧。今天说的这个“为什么”,我是想说,为什么现在的我没有达到当初自己期望(完全是技术追求上的)。我已经工作5年多了,一直从事linux系统相关的软件开发工作。工作之余,也喜欢翻看一些十分经典的UNIX著作,期望能使自己的技术能力和设计原创 2017-09-23 17:28:57 · 434 阅读 · 0 评论 -
Linux 同步机制比较与联系
操作系统提供的同步原语包括:互斥锁、读写锁、条件变量、信号量,支持多任务的OS一般都会实现上述几种同步方式。Linux作为多任务、多用户系统,同样实现了上述几种同步方式。对于在Linux系统下编程的程序员来说,可能都或多或少的使用或者听说过这几种方式,对于它们的基本使用方式可能都大体的解了。但是,这里有一个问题,不知道大家是不是想过,系统为何会同时提供如此之多的同步方式,它们之间的区别和联系是什...原创 2019-01-08 16:41:23 · 903 阅读 · 0 评论 -
表驱动编程简介
表驱动编程表驱动法是一种编程模式(scheme)——从表里面查找信息而不使用逻辑语句(if和case)。事实上,凡是能通过逻辑语句来选择的事物,都可以通过查表来选择。对简单的情况而言,使用逻辑语句更为容易和直白。但随着逻辑链的越来越发杂,查表法也就愈发显得更具吸引力。原创 2014-08-11 22:11:58 · 3167 阅读 · 0 评论 -
内存池机制实现解析-Nginx
Nginx源码剖析之内存池,与内存管理作者:July、dreamice、阿波、yixiao。出处:http://blog.csdn.net/v_JULY_v/。引言 Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议转载 2014-03-24 22:26:26 · 1237 阅读 · 1 评论 -
少编码,多思考
少编码多思考:代码越多 问题越多 摘要:本文作者Ed Finkler是一名PHP、Python、JavaScript程序员。有许多产品开发经验,例如Spaz,一个开源微博客户端桌面和WebOS。他在编码时总结了一些非常益用的编码守则,分享给大家。大约一年前,我曾编写过一些PHP Web编程守则——MicroPHP Manifesto。但我发现各个语言之间有一些共同的编程/编码转载 2012-12-17 20:51:12 · 637 阅读 · 0 评论 -
如何学习技术
今天在CSDN上看到一篇讲如何学习技术的文章。感受颇深,希望有和我一样境况的童鞋能从中得到教益。1. 想学的技术非常多,该怎么办?区分重点,选定目标,循序渐进。技术是无边际的,随着知识的不断增加,会发现未知的东西更多。我们能做的是:1) 找重点:区分感兴趣的技能和必须技能,将重点放在必须技能上。如实在区分不开,可以这样问自己:不学这个技术会现在的工作是不是干不下去了?2) 定目标:转载 2013-01-12 22:32:13 · 813 阅读 · 0 评论 -
十年,一个程序员的感悟
展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告走过的路,回忆起来是那么曲折,把自己的一些心得体会分享给程序员兄弟姐妹们,虽然时代在变化,但是很可能你也会走我已经做过的10年的路程,有些心得体会你可以借鉴一下,觉得说得有道理的你就接纳,觉得说得没道理的,你就抛弃,以下是我发自内心的,给大家的忠告,特别是针对那些小弟弟妹妹们。01. 自己的户口档案、养老保险、转载 2013-02-27 20:56:15 · 1042 阅读 · 0 评论 -
经验之谈 学习嵌入式开发起步指南
摘要:社区之星记者第四次的采访是CSDN博客专家唐攀,唐攀是华清远见高级研发工程师和高级讲师,他认为要想深入学习嵌入式,要先学好汇编和体系结构,对操作系统要了解透、中断处理、内存管理和内核结构体等等都能熟练掌握,另外再加上代码的阅读能力。对于嵌入式工程师应该会哪些技术,唐攀认为技术只是工具,最主要的还是编程思想唐攀,华清远见高级研发工程师和高级讲师,从事Android底层及系统移植相关转载 2013-03-30 20:24:53 · 1836 阅读 · 0 评论 -
国外免费电子书资源下载
在StackOverflow上,有人要打算收集个免费电子书的列表,结果很快就有人分享了一个列表。很不错,我就转过来了。原帖的地址在http://stackoverflow.com/questions/194812/list-of-freely-available-programming-books (注意:有些连接可能会被墙掉)List of Free Programming books (c转载 2013-03-30 21:30:09 · 2610 阅读 · 0 评论 -
算法 选择
每年一到要找工作的时候,我就能收到很多人给我发来的邮件,总是问我怎么选择他们的offer,去腾讯还是去豆瓣,去外企还是去国内的企业,去创业还是去考研,来北京还是回老家,该不该去创新工场?该不该去thoughtworks?……等等,等等。今年从7月份到现在,我收到并回复了60多封这样的邮件。我更多帮他们整理思路,帮他们明白自己最想要的是什么。(注:我以后不再回复类似的邮件了)。我深深地发现,对于转载 2013-04-06 21:27:45 · 1075 阅读 · 0 评论 -
整数与各种进制之间的转换
1.整数转换为二进制#includevoid int2binary(int x){ char binary[32]; char i = 0, j = 0; while(x) { binary[i] = (x % 2); ++i; x = x >> 1; } for(j = i - 1; j >= 0 ; --j) { printf("binary:原创 2013-08-11 23:04:25 · 1354 阅读 · 0 评论 -
如何使用htonl实现long long 字节序的转换
今天同事问了一个关于如何将long long转换字节序,思考了一下先实现如下,经测试,好用!#include #includeunsigned long lon原创 2013-10-10 20:30:59 · 3894 阅读 · 0 评论 -
阅读优秀代码是提高开发人员修为的一种捷径
文章出处:http://www.kuqin.com/pragmatic/20111208/315844.html编者按:原文作者Alan Skorkin是一名软件开发人员,他在博客中分享对软件开发相关的心得,其中有很多优秀的文章,本文是其中的另一篇。Alan认为:阅读优秀代码是提高开发人员修为的一种捷径。以下是全文。我突然想起来,很多程序员都讨厌阅读代码。来吧,承认吧! 每个人都喜转载 2014-02-23 21:47:47 · 1091 阅读 · 0 评论 -
对嵌入式开发的一点理解
本人是今年刚毕业的学生,本科期间学的是嵌入式方向。现在在一家网络设备公司做软件工程师。刚毕业的时候,感觉找的这家公司不是很理想,因为不是自己心目中的搞嵌入式的样子了。也许有不少人心里想象的嵌入式工作是这样的-研究软件移植或者系统开发的,比如U-boot移植啊,linux内核移植啊等等之类的吧!而且对嵌入式的理解还有开发语言的偏见,认为开发语言不是c语言或者汇编语言就不是搞嵌入式的!怀有诸如以上的种原创 2012-08-25 22:04:58 · 1621 阅读 · 3 评论