03 2017 档案
摘要:本文记录了因为一个简单的日志需求,继而对linux环境下syslog、rsyslog、unix domain socket的学习。本文关注使用层面,并不涉及rsyslog的实现原理,感兴趣的读者可以参考rsyslog官网。另外,本文实验的环境实在debian8,如果是其他linux发行版本或者deb
阅读全文
摘要:C盘又满了,怎么办?用了一些垃圾清理软件(或者bat脚本),但是还是不理想,那么具体哪些文件夹下面有巨大的文件呢?windows并不能通过详细信息看到每个文件夹的大小(PS:这里所谓的文件夹的大小是指文件夹下面所有文件的大小之和,包括子文件夹的大小,下同),道理也很简单,计算文件夹大小是比较费时的工
阅读全文
摘要:读者写者问题是非常经典的同步问题,本文首先用信号量来解决这个问题,并结合代码分析什么是读者优先、什么是写者优先,然后给出读写锁的解决方案,并指出在Linux下读写锁的注意事项。 读者写者问题 读者写者问题描述的是这么一种情况:对象在多个线程(或者进程)之间共享,其中一些线程只会读数据,另外一些线程只
阅读全文
摘要:计算机硬件发展到今天,不管是专业服务器还是PC,甚至于最普遍的移动设备基本上都是多核CPU,程序的并发执行可以更加充分利用这些计算资源。除此之后,为了协调CPU与外设(如磁盘)的速度差异,我们也需要并发。本文是笔者学习清华大学和UCSD(加州大学圣迭戈分校)的操作系统课程的笔记和总结,以及自己的思考
阅读全文
摘要:python是目前使用最为广泛的编程语言之一,其高效的开发效率吸引了大批的开发者,但性能问题一直是python的软肋。本文就CPython2.7介绍python性能优化相关的一些知识,包括怎么确定热点、通用的优化建议、python扩展以及cython和pypy。
阅读全文
摘要:Mixin(织入)模式并不是GOF的《设计模式》归纳中的一种,但是在各种语言以及框架都会发现该模式(或者思想)的一些应用。简单来说,Mixin是带有全部实现或者部分实现的接口,其主要作用是更好的代码复用。本文将介绍Mixin的应用场景,以及关于继承、组合、多继承、接口的一些思考。 相关概念: 前面提
阅读全文