基于网络环境的虚拟化实验教学平台构建

2017-07-24 14:57陈新杨子天
新校园·上旬刊 2017年4期
关键词:网络环境虚拟化

陈新 杨子天

摘 要:针对计算机编程类课程建立网络教学实验平台,不仅可供计算机相关专业借鉴,也可广泛应用于理工类专业的教学实践中。在网络迅速普及的时代,基于网络环境的教学研究将具有更加重要的应用价值。

关键词:网络环境;虚拟化;实验教学平台

一、概述

计算机编程类课程是理工类专业的典型课程,具有实验要求高、环境复杂等特点。基于网络的计算机实验平台已在国外高水平大学的理工科教学中得到了广泛应用,并取得了良好的效果,其必将成为国内大学理工科课程教学改革的探索方向。网络教学可以为学生提供一种全新的学习模式,满足学生随时随地学习的需求。在国外,网络实验教学正处在快速发展的阶段,以MOOC为代表的大型开放式网络课程已从北美洲、欧洲传播到亚洲、南美洲、非洲及大洋洲。国外一些高校借助虚拟化及云技术也搭建了自己的计算机科研实验平台,如Grid5000、PlanetLab及DAS-4等。通过平台搭建,教学实验资源的提供和使用方式发生了巨大的变化,形成了横跨多个资源节点、对用户透明的实验环境。

二、当前存在的问题

国内高校目前的计算机类编程实验大多还是以单机操作为主,许多高校计算机实验教学管理还没有完全实现网络化,导致实验教学的组织、实施、质量管理过程中存在很多不尽人意的问题,影响实验教学的顺利进行。

另外,实验环境不同,编译结果也是千差万别。实验报告大多是纸质手写,学生把大量精力浪费在抄写代码的过程中。此种形式也给教师审核带来很大不便,使其无法把精力全部放在实验教学上。

三、虚拟化实验教学平台的设计与实现

网络教学的整体方案将部署在VMware vSphere平台上,其中包含以下三大方案:

1.MOOC教学板块。

在线上播放课件,以网络为依托,应用多媒体和网络技术,通过多媒体教学信息的收集、传输、处理和共享实现教育教学目标。如可以将课堂视频、课外习题、课堂讲义等资源传输到终端供学生自主选择,自主学习。

2.基于Docker容器技术的在线实验环境。

所使用的环境结构基于Docker容器技术,它不同于传统的使用环境,用户的所有操作仅限于最上层的操作界面。此外,不同用户共享除用户层以外的其他层,类似应用于沙盒和还原中的技术,不同实验会有不同的材料层。

3.Online Judge在线评测。

Online Judge采用模块化分层设计,各个模块之间相互高度解耦,并相互隔离,保证其可用性及安全性。操作系统选用Linux操作系统,Web部分采用普通Web方案。判题部分是整个Online Judge网站的核心所在。把判题部分单独抽出来组成一类服务,便于随时通过增加判题节点加快判题的速度。Web端发送判题的请求给RabbitMQ等消息队列,每一个判题节点就是一个worker,这样可以增加判题节点的数量。判题核心就是编译、运行用户提交的代码程序,通过设置时间、内存等限制,对ptrace进行监控,对系统调用进行限制,解决安全性问题。

四、安全性问题

1.时间、资源的限制。

使用rlimit控制内存,方便在运行结束后获得内存使用情况的数据。使用rlimit进行CPU时间控制,但其只能控制CPU时间,不能控制实际运行时间,所以需要额外添加alarm进行实际时间的限制。文件句柄同样通过rlimit实现,以保证程序不要打开太多文件。如果可行的话,最好还是使用stdio然后管道重定向,完全禁止程序的文件IO操作。

2.访问控制。

通过chroot建立一个jail,将程序限制在指定目录中运行。由于是比赛程序,使用的动态链接库很有限,所以直接静态编译。

3.權限控制。

监控程序使用root权限运行,完成必要准备后fork并切换为受限用户运行程序。

4.系统调用控制。

监控所有的系统调用,运用白名单+计数器过滤。

五、结论

本文研究了当前编程实验教学方式存在的不足,以建构主义学习理论为指导,探究了新的网络环境下的教学模式和方法,构建了一个以实践性教学思想为指导的网络教学平台,为教学提供了资源性支持、交互性支持和管理性支持,为学生学习提供良好的网络学习实验环境,同时也可以帮助教师搭建学习环境,指导学习过程,监控学习状态,了解教学反馈和开展教学评价。

参考文献:

[1]张青,杜召阳,白佳.采用虚拟化技术优化IT基础架构有效提升IT服务提供能力[J].电信技术,2010,1(3):82-84.

[2]王鹏.一种基于云端技术的计算机实验室维护系统[J].兴义民族师范学院学报,2013(2):114-117.

猜你喜欢
网络环境虚拟化
基于OpenStack虚拟化网络管理平台的设计与实现
对基于Docker的虚拟化技术的几点探讨
虚拟化技术在CTC/TDCS系统中的应用研究
虚拟化技术在计算机技术创造中的应用
网络环境下中职计算机教学的探析
试论高校图书馆在网络环境冲击下的人文建设
网络环境下的大学生道德与法治教育浅析
网络环境下的商务英语课程资源库的建设研究
网络视域下初中作文教学初探
高速公路服务器虚拟化技术应用与探讨