Skip to content

Embedded-Virtual-Online-System(嵌入式虚拟在线实验系统),该系统支持批量用户同时进行嵌入式在线实验,并能够实现观测到嵌入式开发板的状态。

Notifications You must be signed in to change notification settings

lmltechtools/Embedded-Virtual-Online-System

 
 

Repository files navigation

Embedded-Virtual-Online-System

Embedded-Virtual-Online-System(嵌入式虚拟在线实验系统),该系统支持批量用户同时进行嵌入式在线实验,并能够实现观测到嵌入式开发板的状态。

需求描述

  • 服务器虚拟化为多个独立的虚拟机操作系统,用户可通过注册,获取账号密码,并获得自动分配的虚拟机,用户可以通过web访问到自己的系统。
  • 服务器通过USB转多路串口连接内网里的开发板,通过网线直连摄像头观察开发板。
  • 开发板ip地址固定,服务器虚拟机可以通过telnet远程登录到开发板。
  • 用户可以对操作进行管理,存储。设备可以对虚拟机进行管理,提供CPU、内存限制、系统快照,自动分配用户帐号密码。

技术路线

  • 虚拟化
    • Docker工具实现服务器虚拟化
  • Web访问
    • noVNC工具实现在线Web访问虚拟机
  • 系统实现
    • Java ssh2(Struts2 + Spring + Hibernate)实现整个系统的构建
  • 体系结构
    系统体系结构

功能实现

  • 使用Docker实现服务器虚拟化后,我们选取了桌面版的Docker镜像,在此基础上根据实验室需求构建了自己的桌面版的Docker镜像。
  • 使用开源工具noVNC实现Web在线访问虚拟机时,根据自身需求对noVNC源码进行了相关修改。具体实现方法可参考:教程

系统演示

系统演示
图1 系统演示

测试LED灯亮 图2 测试LED灯亮

About

Embedded-Virtual-Online-System(嵌入式虚拟在线实验系统),该系统支持批量用户同时进行嵌入式在线实验,并能够实现观测到嵌入式开发板的状态。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 58.2%
  • CSS 31.8%
  • HTML 5.0%
  • Java 4.3%
  • Python 0.3%
  • Shell 0.3%
  • Other 0.1%