Page 117 - 《软件学报》2021年第7期
P. 117
石剑君 等:操作系统内核并发错误检测研究进展 2035
[23] Abbaspour Asadollah S, Sundmark D, Eldh S, Hansson H. Concurrency bugs in open source software: A case study. Journal of
Internet Services and Applications, 2017,8(1):1–15.
[24] Shi JJ, Ji WX, Wang YZ, et al. Linux kernel data races in recent 5 years. Chinese Journal of Electronics, 2018,27(3):556–560. [doi:
10.1049/cje.2018.03.015]
[25] Bai JJ, Lawall J, Chen QL, Hu SM. DCUAF: Effective static analysis of concurrency use-after-free bugs in linux device drivers. In:
Proc. of the 2019 USENIX Annual Technical Conference (ATC). 2019. 255–268.
[26] Williams A, Thies W, Ernst MD. Static deadlock detection for Java libraries. In: Proc. of the European Conf. on Object-oriented
Programming (ECOOP). Berlin, Heidelberg: Springer-Verlag, 2005. 602–629. [doi: 10.1145/1735970.1736040]
[27] Burckhardt S, Kothari P, Musuvathi M, Nagarakatte S. A randomized scheduler with probabilistic guarantees of finding bugs. ACM
SIGARCH Computer Architecture News, 2010,38(1):167–178. [doi: 10.1145/1735970.1736040]
[28] Cai Y, Chan WK. MagicFuzzer: Scalable deadlock detection for large-scale applications. In: Proc. of the 34th Conf. on Software
Engineering (ICSE). 2012. 606–616. [doi: 10.1109/ICSE.2012.6227156]
[29] Lamport L. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, 1978,21(7):558565.
[doi: 10.1145/3335772.3335934]
[30] Sheng T, Vachharajani N, Eranian S, Hundt R, Chen W, Zheng W. RACEZ: A lightweight and non-invasive race detection tool for
production applications. In: Proc. of the 33rd Conf. on Software Engineering (ICSE). Waikiki: ACM Press, 2011. 401–410. [doi: 10.
1145/1985793.1985848]
[31] Savage S. Eraser: A dynamic data race detector for multithreaded programs. ACM Trans. on Computer Systems, 1997,15(4):
391–411. [doi: 10.1145/265924.265927]
[32] O’Callahan R, Choi JD. Hybrid dynamic data race detection. In: Proc. of the 9th ACM SIGPLAN Symp. on Principles and Practice
of Parallel Programming (PPoPP). New York: Association for Computing Machinery, 2003. 167–178. [doi: 10.1145/781498.
781528]
[33] Voung JW, Jhala R, Lerner S. RELAY: Static race detection on millions of lines of code. In: Proc. of the 6th Joint European
Software Engineering Conf. and Symp. on the Foundations of Software Engineering (ESEC/FSE). Dubrovnik: ACM Press, 2007.
205–214. [doi: 10.1145/1287624.1287654]
[34] Pratikakis P, Foster JS, Hicks M. Locksmith: Context-sensitive correlation analysis for race detection. ACM SIGPLAN Notices,
2006,41(6):320–331. [doi: 10.1145/1133255.1134019]
[35] Deligiannis P, Donaldson AF, Rakamaric Z. Fast and precise symbolic analysis of concurrency bugs in device drivers (t). In: Proc.
of the 30th IEEE/ACM Conf. on Automated Software Engineering (ASE). Lincoln: IEEE, 2015. 166–177. [doi: 10.1109/ASE.2015.
30]
[36] Park S, Lu S, Zhou Y. CTrigger: Exposing atomicity violation bugs from their hiding places. In: Proc. of the 14th Conf. on
Architectural Support for Programming Languages and Operating Systems. 2009. 25–36. [doi: 10.1145/1508244.1508249]
[37] Sasturkar A, Agarwal R, Wang L, Stoller SD. Automated type-based analysis of data races and atomicity. In: Proc. of the 10th ACM
SIGPLAN Symp. on Principles and Practice of Parallel Programming (PPoPP). Chicago: ACM Press, 2005. 83–94. [doi: 10.1145/
1065944.1065956]
[38] Lockdep. 2020. https://www.kernel.org/doc/Documentation/locking/lockdep-design.txt
[39] KASAN. 2020. https://www.kernel.org/doc/html/latest/dev-tools/kasan.html
[40] Syzkaller. 2020. https://github.com/google/syzkaller
[41] KTSAN. 2020. https://github.com/google/ktsan
[42] Luk CK, Cohn R, Muth R, Patil H, Klauser A, Lowney G, Wallace S, Reddi VJ, Hazelwood K. Pin: Building customized program
analysis tools with dynamic instrumentation. ACM SIGPLAN Notices, 2005,40(6):190–200. [doi: 10.1145/1064978.1065034]
[43] Nethercote N, Seward J. Valgrind: A framework for heavyweight dynamic binary instrumentation. ACM SIGPLAN Notices, 2007,
42(6):89–100. [doi: 10.1145/1273442.1250746]
[44] KCSAN. 2020. https://www.kernel.org/doc/html/latest/dev-tools/kcsan.html
[45] Jeong DR, Kim K, Shivakumar B, Lee B, Shin I. Razzer: Finding kernel race bugs through fuzzing. In: Proc. of the 2019 IEEE
Symp. on Security and Privacy (SP). San Francisco: IEEE, 2019. 754–768. [doi: 10.1109/SP.2019.00017]