Skip to content
Shawning-Song edited this page Apr 9, 2017 · 1 revision

Welcome to the My-First-Test-Project wiki!

无锁算法

内存管理

allocation-basic内存分配基础

https://www.cs.cmu.edu/afs/cs/academic/class/15213-f10/www/lectures/17-allocation-basic.pdf

各种内存管理算法的比较

http://jultika.oulu.fi/files/nbnfioulu-201302081026.pdf

scalable lock-free dynamic memory allocation

https://www.research.ibm.com/people/m/michael/pldi-2004.pdf

fast efficient fixed-size memory pool

一种无锁的定长内存分配算法,但批量时cache性能不如有锁的 https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwjs87-HlMzSAhUT5GMKHb0YAScQFggaMAA&url=https%3A%2F%2Fwww.thinkmind.org%2Fdownload.php%3Farticleid%3Dcomputation_tools_2012_1_10_80006&usg=AFQjCNEPMpqZp7L6D4yrE0AMQETpMyJjFQ&bvm=bv.149093890,d.amc

适用于实时系统的分配算法,能确保在固定时间内完成操作。也比较容易看懂

A constant-time dynamic storage allocator for real-time systems TLSF (two level segregated fit) http://www.gii.upv.es/tlsf/files/jrts2008.pdf

内存回收。google找内存回收,用关键词memory reclamation

hazard pointers: safe memory reclamation for lock-free objects http://web.cecs.pdx.edu/~walpole/class/cs510/papers/11.pdf

无锁map,适用于key value store

下面两个算法比较容易看懂,但没有考虑多进程共享时,进程异常退出的场景

non-blocking binary search trees https://pdfs.semanticscholar.org/00b3/ebd315991e5b5f4e6beec2e1488281368028.pdf

split-ordered lists: lock-free extensible hash tables

http://people.csail.mit.edu/shanir/publications/Split-Ordered_Lists.pdf