在对文件进行读写之前需要与该文件建立一个通道,也就是打开一个文件。而打开文件的连接过程可以是一个流或者一个文件描述符。有些处理文件的函数需要流,而其它的可能会对文件描述符进行操作,在结束读写的时候需要关闭文件。文件描述符一般是 int
类型,而流则一般是 FILE *
对象。
Computer Performance Microscopy with SHIM
文章主要是关于细粒度高频率观测程序性能,作者yangxi,文章和实验代码均可以在github上找到 。一般的程序性能观测采样是采用的linux的perf模块,但是perf只能观测较为宏观的程序性能参数,如果进行高频度的观测,观测程序就会对被观测程序进行影响,而这篇文章中的shim正是为解决这个问题而存在的。而shim之所以能在elfen论文中被使用也正是因为其高频度的准确观测程序数据,这一点使得其能够高频度观测到cpu空闲的区间,进而被elfen所用。