论文部分内容阅读
随着计算机软硬件的发展,瘦客户计算模式的网络计算机得到了广泛的应用。网络计算机以其高性能、高可靠性、管理成本低、升级压力小等众多优点,得到各大厂商的青睐,广泛应用于医疗、电子图书阅览室、政府办公等领域。
网络计算机的启动方式有两种:网络启动和本地启动,其中网络启动是网络计算机的一个重要功能。相对于本地启动,它具有升级成本低、便于集中管理等优点。使用网络启动来代替本地启动还可以降低网络计算机的硬件成本。而且,在系统的调试开发阶段,网络启动可以便捷的更换系统内核,提高调试效率。
传统的网络启动通常使用TFTP(TriviaIFileTransferProtocol)协议下载系统内核,该协议对大内核的下载,在速度上有一定的局限。但鉴于以往一般应用于交换机、集群等无人监管的计算机系统中,对用户体验没有严格要求,而且早期应用中的系统内核较小,简单的TFTP协议可以满足需求。随着近年来系统内核的不断增大,以及在面向终端用户的瘦客户端应用模式中,启动时间过长会给使用者造成负面影响。此外,在系统的调试开发过程中,FPGA开发板的工作频率较低,这使得每次调试的等待时间过于漫长,极大的降低了开发人员的工作效率。这些问题都极大的限制了网络启动的速度。如何利用瘦客户端有限的硬件资源来提高网络启动速度,已经成为一个亟待解决的问题。
为了解决上述问题,本文结合北大众志PKUnity体系结构的特点,提出了eXtreme网络启动方案。针对往返延时和内存拷贝这两个影响网络启动速度的主要瓶颈,本文引入了滑动窗口和DMA内存拷贝这两种优化策略进行改进。为了进一步提高系统的任务并行性,提出了数据应答的并行发送方案,最后形成统一的eXtreme网络启动方案。在FPGA开发板进行测试的结果显示,eXtreme网络启动方案较传统方案,在启动速度上,提高达5~8倍以上,下载传统的1MB内核只需要0.24s,对后续的内核和应用开发提供了更好的支持。该方案的优化思路和优化方法对其他体系结构也同样具有借鉴意义。