论文部分内容阅读
Linux操作系统以其自由精神和源代码的公开性而为人们称赞。在短短的十几年时间里,它已具备了强大的生命力。稳定性、灵活性、多任务、多用户的交互能力、良好的用户界面、独立的设备性、丰富的网络功能及良好的可移植性铸就Linux在当今操作系统领域的地位。进程管理处于操作系统的核心位置,以其复杂抽象性加大了学习研究的难度。进程调度的复杂性很强,加大了学生的理解难度。在操作系统教学过程中,学生要面对的正是这诸多的复杂的问题,纯理论的讲解既枯燥又繁琐,要入门是不容易的。那么,如何解决这-抽象性问题,在学生面前展现一幅幅生动的进程运行画面,让学生清晰地了解这一过程就变的很有意义。针对复杂而又抽象的理论讲解,如果能将可视化技术引入到操作系统的教学当中,就将起到事半功倍的效果。而如今的可视化技术已经取得了令人瞩目的成就。它利用图形图像的相关理论技术,将复杂的数据信息、转化为人们易于理解的图形图像,极大地提高了人们的认知能力,变复杂为生动简单。可视化技术的应用领域也是非常广泛的,包括医学影像、地理信息系统、教育等。在教学网络多媒体方面的应用更多,如flash动画的制作。正是通过这种点、线、面的接合,通过动画的形式来展现一个个复杂的过程。将可视化技术引入操作系统教学系统中,必将降低讲解难度,提高学生接受程度。针对操作系统的核心—进程,通过可视化的方法来展现操作系统的重点与难点----进程调度过程,就是本文的研究重点。本文以Linux系统下,进程调度过程的数据作为数据源,在windows系统下对这些数据进行处理及可视化操作等,通过动画的形式,以滞后的方式再现Linux操作系统进程调度过程,做到形象生动易于理解。主要研究内容包括:1、从Linux操作系统内核源码出发,理解进程调度相关过程,明确与进程调度相关的数据的意义。2、深入学习Ftrace工具,主要研究sched_switch和irqsoff跟踪器的源码。对跟踪器源码进行修改,重新编译进内核。最终提取完整的、针对linux系统的进程运行数据,做到涵盖所有进程状态。3、对于从Linux系统进程运行中所获取的数据,在windows系统下进行预处理,去除冗余和非必要的信息。保留原数据的的真实性,对时间进行滞后处理。对预处理过的数据进行严格的格式定义,确保指令的一致性与可操作性。4、对处理好的数据进行可视化操作,包括cpu、队列、时间片、计时器、中断等的图形图像设计,同时还要考虑到动画的设计,包括进程的运动情况、动画的连续性、图形位置的改变等。最终以形象生动的动画来展现进程调度这一复杂过程。本文通过在操作系统教学过程中引入可视化的方法,极大地降低了教学难度,将进程调度这一复杂过程简化,数据真实可靠,易于理解。能够提高学生对这一理论的进一步理解,具有进一步研究开发的意义。