All posts by Cocoa

自己实现一个malloc

昨天阿里校招有这样一道题:

常常会有频繁申请、释放内存的需求,比如在发送网络报文时,每次都要分配内存以存储报文,等报文发送完成后又需要删除报文。
为了避免频繁的new/delete对系统带来的开销,需要实现一个通用的FreeList机制。使用者总是从free list中分配内存,如果存在没有使用的内存块就直接摘出来使用,如果没有的话再从系统中分配。使用完毕后并不去直接delete该内存块,而是交给FreeList保管。
要求:
1. 实现一个对固定大小内存块进行管理的通用FreeList类,给出定义和实现。要求不能使用STL中的容器类。定义类的接口和实现时注意通用性、健壮性和可测试性。
2. 如果该类的对象可能会被多个thread同时访问,请描述如何怎样保证线程安全。有没有办法在保证线程安全的同时尽可能增大并发度?如果有也请描述你的思路。

坑了5、6个小时终于写好了第一问,不过似乎写出来和要求的不太一样。。。(但是是绝对可用的)

Continue reading 自己实现一个malloc

HL-340 / CH-340 / CH-341 Driver

之前买了树莓派,然后坑了个串口转USB的转接器,转接器买回来之后才发现居然没!驱!动!

看了一下转接器上面的芯片,是HL340,在网上Google了N久之后,发现了一个app可以连接,但是极难使用,果断放弃。

之后发现了某网站,上面在卖HL-340 / CH-340 / CH-341的Driver,不过要花7.04欧,但也总比换掉树莓派、自己写驱动什么的好>///<

于是这里还是把驱动发上来造福社会吧。

Continue reading HL-340 / CH-340 / CH-341 Driver