论文部分内容阅读
操作系统是计算机科学的重要学科,研究操作系统对于理解计算机的工作原理和将计算机更好的应用于生产和生活都具有重要意义。然而,由于操作系统包含许多复杂而抽象的概念和算法,使得对操作系统的研究面临许多困难。传统的研究方法仅限于理论的学习和探索,缺乏合适的研究工具使研究者对抽象的理论产生直观的认识,很难理解操作系统的真实执行过程。近年来,可视化技术发展迅速,使得它在提高人类认知能力方面发挥着越来越重要的作用。如今它已深入到地理、医疗软件开发、教育等各领域,并且与网络信息搜索、软件可视化、数据挖掘等方向结合,具有更广泛的研究及应用价值,本文重点在于探索和展示如何将信息可视化应用于操作系统的教学与研究。本文以内核运行时获得的真实数据为基础,并以内核函数和数据结构为主体进行可视化,针对系统在某段时间内相对完整的一个执行过程,直观地可视化出此过程中各种关键操作的执行细节。文章主要内容如下:1、从可视化的基本理论出发,介绍可视化近年来的发展和应用现状,着重介绍信息可视化的概念、内涵和关键问题,在此基础上探讨操作系统可视化不同于普通软件可视化的特殊性,分析要考虑的关键问题,给出操作系统运行过程可视化的总体工作流程。2、结合Windows源码中各实体的数据结构,介绍了各实体的主要属性和操作的可视化方法,给出了操作系统各种主要操作的数据描述,重点介绍如何合理直观地表现各实体的真实状态和协作过程,并给出了CPU、外设和队列等的可视化实例。采用动态直观的动画效果展现了线程插入队列、从队列中删除等操作的执行细节,同时展示了这些操作过程中操作系统内核函数的调用过程和中断处理过程。3、以线程调度过程为例,结合一段时间内Widows的执行过程,展现这段时间内操作系统线程调度的真实过程,提供了几个不同时刻的可视化实例,证实了以可视化方法表现操作系统真实运行过程的可行性,给出了探索操作系统可视化的一般思路和方法。文章最后对当前工作进行了总结,分析了不足之处并展望了操作系统关键过程可视化下一步的工作重点和发展前景。从本文最后给出的可视化效果展示可知,结合内核运行时真实数据以关键函数和数据结构为重点的过程可视化,可以从源码出发实现对所跟踪过程以及相应数据结构、算法的深层次理解,且可视化结果真实可信,具有进一步研究和开发的意义。