论文部分内容阅读
随着计算机技术的不断发展,CPU和系统主存的性能得到了极大的提高,但依然不能满足应用程序日益增长的内存需求,特别是I/O设备的发展相对滞后,磁盘性能成为影响计算机整体性能的重要瓶颈。为了提高局域网中内存利用率和系统I/O性能,利用高速局域网中高带宽、低延迟的传输特点,在现有研究基础上,本文通过扩充系统交换区容量,提高交换区换页速度,设计和实现了I/O密集型应用和内存密集型应用透明访问远程内存系统(NS-DSM)。该系统实现了在局域网范围内对远程内存的透明共享。本文主要工作有以下几点:首先,为了能够访问其他节点的空闲内存,本文在客户端节点创建网络块设备来接收响应访问远程内存的操作,然后通过基数树结构查找、插入、删除操作把系统内存页映射到远程内存,从而实现对远程内存的访问。其次,NS-DSM系统通过创建和激活交换空间的方法把网络块设备挂载到客户端节点,从而使应用程序能够透明的访问远程内存。为了使内存页能够在最大传输单元为1500KB的以太网中分片、重组后快速传输,系统通过实现轻量级的传输协议——访问网络内存协议(ANMP)来对需要传送的页面进行分片、重组以及数据包传输。最后,本文设计和实现了客户端-服务端服务加载和转换策略。该策略根据系统内存使用情况的不同而加载不同的状态,并在系统运行时定期检测结点的空闲内存并做相应的服务转换。该策略使得系统中各结点尽可能的负载均衡,从而使整个系统处于一个资源利用的“平衡”状态。NS-DSM系统实现了局域网内内存的透明共享,并且不用对系统内核作任何修改,也不需要任何特殊的API或者函数库。它对应用程序完全透明,同时不用进行繁杂的数据一致性检验和完整性检验。实验表明,对于大量磁盘访问和内存密集型的应用,该系统能有效地提高系统整体性能和大型应用程序的执行速度。