随笔分类 -  编程技术

摘要:github 提交报403 forbidden的错误解决 阅读全文
posted @ 2016-07-03 11:02 三丰SanFeng 阅读(14986) 评论(0) 推荐(1)
摘要:C语言中可以用bsearch()实现二分查找。同qsort()一样,bsearch()也包含在glibc库中,且同样要自定义比较函数。其原型如下:void *bsearch(const void *key, const void *base, size_t nmemb, size_t size, i... 阅读全文
posted @ 2016-01-06 13:36 三丰SanFeng 阅读(919) 评论(0) 推荐(0)
摘要:什么叫域名解析域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。域名解析也叫域名指向、服务器设置、域名配置以... 阅读全文
posted @ 2015-11-25 17:25 三丰SanFeng 阅读(1940) 评论(1) 推荐(0)
摘要:定量分析是一切优化过程中最重要的过程之一。在性能优化和分析中,我们如何来描述一段代码的执行效率呢?这里,我将这一过程分为2步。第一步:我们要找到一个客观的、相对稳定的单位,来描述一个程序的运行时间;第二步:构造合理的、更接近起初情况的测试用例来进行测量。这样,最终得到的结果,就是对于一段代码执行效率... 阅读全文
posted @ 2015-11-10 19:10 三丰SanFeng 阅读(1254) 评论(0) 推荐(0)
摘要:1 MySQL简介MySQL是最流行的开放源码SQL数据库管理系统,相对于Oracle,DB2等大型数据库系统,MySQL由于其开源性、易用性、稳定性等特点,受到个人使用者、中小型企业甚至一些大型企业的广泛欢迎,MySQL具有以下特点:l MySQL是一种关联数据库管理系统,关联数据库将数据保存在不... 阅读全文
posted @ 2015-11-09 17:45 三丰SanFeng 阅读(3329) 评论(0) 推荐(0)
摘要:一、CPU良好状态指标CPU利用率:User Time <= 70%,System Time <= 35%,User Time + System Time <= 70%。上下文切换:与CPU利用率相关联,如果CPU利用率状态良好,大量的上下文切换也是可以接受的。可运行队列:每个处理器的可运行队列<=... 阅读全文
posted @ 2015-10-25 23:14 三丰SanFeng 阅读(5127) 评论(0) 推荐(3)
摘要:信号灯概述什么是信号灯信号灯用来实现同步,用于多线程,多进程之间同步共享资源(临界资源)。PV原语:信号灯使用PV原语P原语操作的动作是:u sem减1。u sem减1后仍大于或等于零,则进程继续执行。u 若sem减1后小于零,则该进程被阻塞后进入与该信号相对应的队列中,然后转进程调度。V原语操作的... 阅读全文
posted @ 2015-10-22 17:48 三丰SanFeng 阅读(5935) 评论(1) 推荐(1)
摘要:平时公司的代码安全扫描会给出不安全代码的告警,其中会检查代码中间的strcpy和sprintf函数,而要求使用strncpy和snprintf。今天我们讨论一下怎样写出完美的snprintf。snprintf是一个在C99才被加入如标准的函数,原来的各个编译器都有自己的实现,至少.NET2003编译... 阅读全文
posted @ 2015-10-20 11:54 三丰SanFeng 阅读(1775) 评论(0) 推荐(0)
摘要:上一次分享了Linux时间时区详解与常用时间函数,相信大家对Linux常见时间函数的使用也有了一定的了解,在工作中遇到类似获取时间等需求的时候也一定能很好的处理。本文基于Linux整形时间给出一些简化的的常用计算思路,试图从另外的角度去加强读者对时间处理的理解,希望对您有所帮助。概述在后台serve... 阅读全文
posted @ 2015-10-18 13:34 三丰SanFeng 阅读(1407) 评论(0) 推荐(1)
摘要:1 概述Linux下的程序大多充当服务器的角色,在这种情况下,随着负载量和功能的增加,服务器所使用内存必然也随之增加,然而32位系统固有的4GB虚拟地址空间限制,在如今已是非常突出的问题了;另一个需要改进的地方是日期,在Linux中,日期是使用32位整数来表示的,该值所表示的是从1970年1月1日至... 阅读全文
posted @ 2015-10-17 16:32 三丰SanFeng 阅读(1685) 评论(0) 推荐(2)
摘要:时间与时区整个地球分为二十四时区,每个时区都有自己的本地时间。Ø UTC时间与 GMT时间我们可以认为格林威治时间就是时间协调时间(GMT = UTC),格林威治时间和UTC时间都用秒数来计算的。Ø UTC时间与本地时间UTC + 时区差 = 本地时间时区差东为正,西为负。在此,把东八区时区差记为 ... 阅读全文
posted @ 2015-10-17 10:09 三丰SanFeng 阅读(7987) 评论(0) 推荐(0)
摘要:共享内存的优势 采用共享内存通信的一个显而易见的好处是效率高,因为进程可以直接读写内存,而不需要任何数据的拷贝。对于像管道和消息队列等通信方式,则需要在内核和用户空间进行四次的数据拷贝,而共享内存则只拷贝两次数据:一次从输入文件到共享内存区,另一次从共享内存区到输出文件。实际上,进程之间在共享内存时 阅读全文
posted @ 2015-10-15 16:25 三丰SanFeng 阅读(6480) 评论(0) 推荐(0)
摘要:详细介绍了POSIX和System V消息队列,对每一个函数的用法都给出了程序示例,希望读完本文的读者能对消息队列有个整体的把握和了解 阅读全文
posted @ 2015-10-12 18:48 三丰SanFeng 阅读(6571) 评论(0) 推荐(1)
摘要:什么是信号软中断信号(signal,又简称为信号)用来通知进程发生了异步事件。在软件层次上是对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是进程间通信机制中唯一的异步通信机制,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么... 阅读全文
posted @ 2015-10-11 16:16 三丰SanFeng 阅读(644) 评论(0) 推荐(0)
摘要:管道(pipe)普通的Linux shell都允许重定向,而重定向使用的就是管道。例如:ps | grep vsftpd .管道是单向的、先进先出的、无结构的、固定大小的字节流,它把一个进程的标准输出和另一个进程的标准输入连接在一起。写进程在管道的尾端写入数据,读进程在管道的头端读出数据。数据读出后... 阅读全文
posted @ 2015-10-09 13:37 三丰SanFeng 阅读(953) 评论(0) 推荐(1)
摘要:介绍了Linux进程间通信的分类以及为什么需要进程间通信,给出了进程间通信的主要分支及演进示意图,为后续详细介绍Linux进程间通信(IPC)给出了一个纲要 阅读全文
posted @ 2015-10-09 13:22 三丰SanFeng 阅读(695) 评论(0) 推荐(0)
摘要:数据与进程对等的处理场景:某服务需要支持海量用户,在一台物理机器上运行了多个进程/线程。对于数据应该如何处理以保证安全快速的访问数据呢?解决方案:“分”分号段分进程分端口分库分表单一生产者与单一消费者场景:网络接入进程与逻辑处理进程通过共享内存通讯。我们要如何进行设计?通常的实现:读写加锁示例:无锁... 阅读全文
posted @ 2015-09-23 21:15 三丰SanFeng 阅读(687) 评论(0) 推荐(0)
摘要:seqlock(顺序锁)用于能够区分读与写的场合,并且是读操作很多、写操作很少,写操作的优先权大于读操作。seqlock的实现思路是,用一个递增的整型数表示sequence。写操作进入临界区时,sequence++;退出临界区时,sequence再++。写操作还需要获得一个锁(比如mutex),这个... 阅读全文
posted @ 2015-09-23 19:49 三丰SanFeng 阅读(1926) 评论(0) 推荐(1)
摘要:RCU(Read-Copy Update)RCU就是指读-拷贝修改,它是基于其原理命名的。对于被RCU保护的共享数据结构,读操作不需要获得任何锁就可以访问,但写操作在访问它时首先拷贝一个副本,然后对副本进行修改,最后在适当的时机把指向原来数据的指针重新指向新的被修改的数据。这个时机就是所有引用该数据... 阅读全文
posted @ 2015-09-23 19:21 三丰SanFeng 阅读(1723) 评论(0) 推荐(0)
摘要:原文地址:http://blog.csdn.net/penngrove/article/details/44175387最近看到Linux Kernel cmpxchg的代码,对实现很不理解。上网查了内嵌汇编以及Intel开发文档,才慢慢理解了,记录下来以享和我一样困惑的开发者。其实cmpxchg实... 阅读全文
posted @ 2015-09-22 21:00 三丰SanFeng 阅读(2483) 评论(0) 推荐(0)