Page 30 - 《软件学报》2024年第6期
P. 30
2606 软件学报 2024 年第 35 卷第 6 期
Trans. on Architecture and Code Optimization, 2008, 5(1): 7. [doi: 10.1145/1369396.1370017]
[13] Stadler L, Würthinger T, Mössenböck H. Partial escape analysis and scalar replacement for Java. In: Proc. of the 2014 Annual
IEEE/ACM Int’l Symp. on Code Generation and Optimization. Orlando: ACM, 2014. 165–174. [doi: 10.1145/2581122.2544157]
[14] Go. Go/issues/54247. 2022. https://github.com/golang/go/issues/54247
[15] Go. Go/issues/44614. 2021. https://github.com/golang/go/issues/44614
[16] Go. Bad pointer. 2023. https://github.com/golang/go/blob/2fcfdb96860855be0c88e10e3fd5bb858420cfe2/src/runtime/mbitmap.go#L321
[17] Zhong CX, Zhao QD, Liu X. BinGo: Pinpointing concurrency bugs in Go via binary analysis. arXiv:2201.06753, 2022.
[18] Liu ZH, Zhu SF, Qin BQ, Chen H, Song LH. Automatically detecting and fixing concurrency bugs in Go software systems. In: Proc. of
the 26th Int’l Conf. on Architectural Support for Programming Languages and Operating Systems. ACM, 2021. 616–629. [doi: 10.1145/
3445814.3446756]
[19] Lange J, Ng N, Toninho B, Yoshida N. A static verification framework for message passing in go using behavioural types. In: Proc. of the
40th IEEE/ACM Int’l Conf. on Software Engineering. Gothenburg: IEEE, 2018. 1137–1148. [doi: 10.1145/3180155.3180157]
[20] Wang C, Zhang MR, Jiang Y, Zhang HF, Xing ZC, Gu M. Escape from escape analysis of Golang. In: Proc. of the 42nd IEEE/ACM Int’l
Conf. on Software Engineering: Software Engineering in Practice. Seoul: IEEE, 2020. 142–151.
[21] Luk CK, Cohn R, Muth R, Patil H, Klauser A, Lowney G, Wallace S, Reddi VJ, Hazelwood K. Pin: Building customized program
Go. Go/issues/31573. 2019. https://github.com/golang/go/issues/31573
analysis tools with dynamic instrumentation. ACM Sigplan Notices, 2005, 40(6): 190–200. [doi: 10.1145/1064978.1065034]
[22] Go. Goroutines. 2023. https://go.dev/doc/effective_go#goroutines
[23] Go. A guide to the Go garbage collector. 2023. https://go.dev/doc/gc-guide
[24] Go. Frequently asked questions (FAQ). 2023. https://go.dev/doc/faq#stack_or_heap
[25] Go. Go escape analysis invariant. 2022. https://github.com/golang/go/blob/master/src/cmd/compile/internal/escape/escape.go#L22
[26] Go. Go/test/escape.go. 2022. https://github.com/golang/go/blob/master/test/escape.go#L10
[27] Go. Go/test/escape_level.go. 2022. https://github.com/golang/go/blob/master/test/escape_level.go#L14
[28] Serebryany K, Bruening D, Potapenko A, Vyukov D. AddressSanitizer: A fast address sanity checker. In: Proc. of the 2012 USENIX
Annual Technical Conf. Boston: USENIX Association, 2012. 309–318.
[29] Song D, Lettner J, Rajasekaran P, Na Y, Volckaert S, Larsen P, Franz M. SoK: Sanitizing for security. In: Proc. of the 2019 IEEE Symp.
on Security and Privacy. San Francisco: IEEE, 2019. 1275–1295. [doi: 10.1109/SP.2019.00010]
[30] Szekeres L, Payer M, Wei T, Song D. SoK: Eternal war in memory. In: Proc. of the 2013 IEEE Symp. on Security and Privacy. Berkeley:
IEEE, 2013. 48–62. [doi: 10.1109/SP.2013.13]
[31] Chabbi M, Ramanathan MK. A study of real-world data races in Golang. In: Proc. of the 43rd ACM SIGPLAN Int’l Conf. on
Programming Language Design and Implementation. San Diego: ACM, 2022. 474–489. [doi: 10.1145/3519939.3523720]
[32] Go. Go internal ABI specification. 2022. https://github.com/golang/go/blob/master/src/cmd/compile/abi-internal.md
[33] Lauinger J, Baumgärtner L, Wickert AK, Mezini M. Uncovering the hidden dangers: Finding unsafe Go code in the wild. In: Proc. of the
19th IEEE Int’l Conf. on Trust, Security and Privacy in Computing and Communications. Guangzhou: IEEE, 2020. 410–417. [doi: 10.
1109/TrustCom50675.2020.00063]
[34] Uber-Go. Goleak. 2023. https://github.com/uber-go/goleak
[35] Zeng B. Static analysis on binary code. 2012. https://engineering.lehigh.edu/sites/engineering.lehigh.edu/files/_DEPARTMENTS/cse/
research/tech-reports/2012/lu-cse-12-001.pdf
[36] Go. The Go programming language specification. 2023. https://go.dev/ref/spec
[37] Go. Go/issues/29000. 2018. https://github.com/golang/go/issues/29000
[38]
[39] Go. Go/issues/47276. 2021. https://github.com/golang/go/issues/47276
[40] Rosenblatt M. Remarks on some nonparametric estimates of a density function. The Annals of Mathematical Statistics, 1956, 27(3):
832–837. [doi: 10.1214/aoms/1177728190]
[41] Parzen E. On estimation of a probability density function and mode. The Annals of Mathematical Statistics, 1962, 33(3): 1065–1076.
[doi: 10.1214/aoms/1177704472]
[42] 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]
[43] DynamoRIO. 2002. https://dynamorio.org/
[44] Roy A, Hand S, Harris T. Hybrid binary rewriting for memory access instrumentation. In: Proc. of the 7th ACM SIGPLAN/SIGOPS Int’l
Conf. on Virtual Execution Environments. Newport Beach: ACM, 2011. 227–238. [doi: 10.1145/1952682.1952711]