开源的在线评测系统——Vakuum
项目地址 http://code.google.com/p/vakuum-oj/
https://github.com/BYVoid/vakuum
简介
Vakuum是一个基于Linux+PHP的在线评测系统(Online Judge),主要面向信息学竞赛(OI)和ACM/ICPC。
功能
在线评测
用户提交程序代码,在线编译,执行测试数据,对其评判并返回结果。支持自定义检查器(Speciel Judge)。支持特殊类型题目(代码检查、交互式、库式、提交答案式)。
比赛举办
兼顾OI和ACM,支持个人赛、团队赛。比赛模式有在线赛(ACM),离线赛(OI),自由计时赛(USACO)。
晋级模式
根据现有题库,由管理员设置或用户推荐一组晋级路线,即做完一组题目后才能进入下一组,并获得相应称号。参加USACO和UVA。
问题讨论
简洁、高效、可控。
其他功能
题库检索,用户排名,队伍系统,权限管理,代码备份,……
架构
Vakuum 系统分为vakuum-web和vakuum-judge两大模块。vakuum-web是一个在线评测系统界面,需要PHP和MySQL支持,可以建立 在Linux或Windows平台下。vakuum-judge是评测系统的核心模块,负责处理用户评测请求,与vakuum-web进行通信。通信模块 为PHP,核心由C语言编写,只能运行在Linux(Unix)平台下。
vakuum-web是基 于PHP和MySQL的一个B/S应用程序,采用MVC(模型-视图-控制器)架构设计,负责与用户交互和与核心通信。支持于评测机分离或和一,支持多评 测机协同作业,不需要daemon和底层权限。用户通过访问vakuum-web查看题目,提交代码,vakuum-web将请求派发给vakuum- judge终端。支持多评测机数据同步,支持测试数据分发管理。主要采用HTTP信道发送命令,FTP信道发送数据。
vakuum- judge通信模块由PHP编写,收到请求以后,使用C语言编写的核心对代码进行编译,并在执行器沙盒中执行,保证系统安全。执行器使用ptrace监控 用户程序的系统调用和文件调用,根据需求加以放行或禁止,同时支持内存峰值统计,内存限制,用户时间统计,时间限制,输出文件大小限制。
现状
正在开发,vakuum-judge核心部分基本完成,vakuum-web底层架构设计完成,正在完善功能。现需要对PHP熟悉的开发者,善于网页设计和美化的开发者,精通Linux系统编程的开发者,有意将内核移植到Windows的开发者,欢迎有意者加入开发。
开源的在线评测系统——Vakuum的更多相关文章
- JavaWeb项目:在线评测系统
此项目为本人的Java大作业. 项目文件和相关资源已上传到本人的GitHub 一.项目概况 1.1设计内容 一个在线评测系统,分用户和管理员两种身份.用户能够通过注册登录,参加比赛,最后实时得到比赛结 ...
- CCF CSP认证考试在线评测系统
关于 CCF CSP 认证考试在线评测系统 CCF CSP 认证考试简介 CCF 是中国计算机学会的简称.CCF 计算机软件能力认证(简称 CCF CSP 认证考试)是 CCF 于 2014 年推出, ...
- 解决学校在线评测系统不支持C++11的问题
如图,我们老师搞的这个评测系统它不支持C++11.但分析错误信息可知GCC本身版本是支持C++11的,只不过没开开.平时的时候我们可以对"g++"后使用"-std=c++ ...
- 南洋理工大学 ACM 在线评测系统 矩形嵌套
矩形嵌套 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a& ...
- CCSUOJ评测系统
队名: BUGG 团队信息与分工: 开发: 周斌 B20150304221 舒 溢 B20150304209 测试: 许嘉荣 B20150304213 唐 浩 B20150304316 Product ...
- 6 款国外开源web oa办公系统(转)
国外的开源产品较多,而且大多提供免费的社区版本,oa办公系统也不例外. 1.eGroupware eGroupware是一个多用户,在以PHP为基础的API上的定制集为基础开发的,以WEB为基础的工作 ...
- OS.js – 开源的 Web OS 系统,赶快来体验
OS.js 是一个开源的 Web OS 系统,可以在浏览器中运行,提供了窗口管理器,应用程序API,用户界面开发套件和抽象的文件系统等.可以部署在 Node 或者 PHP 环境中运行.OS.js is ...
- 深度学习项目——基于卷积神经网络(CNN)的人脸在线识别系统
基于卷积神经网络(CNN)的人脸在线识别系统 本设计研究人脸识别技术,基于卷积神经网络构建了一套人脸在线检测识别系统,系统将由以下几个部分构成: 制作人脸数据集.CNN神经网络模型训练.人脸检测.人脸 ...
- CCSUOJ评测系统——第四次scrum冲刺
1.小组成员 舒 溢 许嘉荣 唐 浩 黄欣欣 廖帅元 刘洋江 薛思汝 2.最终成果及其代码仓库链接 CCSU评测系统 代码仓库 3.评测系统功能 用户注册 用户可选题目进行提交 用户做题结果 排名功能 ...
随机推荐
- SQL记录-PLSQL记录
PL/SQL记录 PL/SQL记录就是可以容纳不同类型的数据项的数据结构.记录由不同字段,类似于数据库表的行. 例如,要保留跟踪图书馆中的书籍.可能要跟踪有关每本书下面的属性类似:标题,作者,主题 ...
- android tools相关
1.showin 在include 的根节点设置,可一预览效果
- javascript公有静态成员
公共静态成员在javascript中并没有特殊语法来表示静态成员.但是可以通过使用构造函数向其添加属性这种方式. //构造函数 var Gadget = function(){}; //静态方法 Ga ...
- 20155238 2016-2017-2 《Java程序设计》第五周学习总结
教材学习内容总结 Java语言中所有的错误都会包装为对象.使用try.catch可以对对象做处理. 设计错误对象都继承自java.lang.Throwable类.Throwable定义了取得错误信息, ...
- CSS3 响应式布局: @media (min/max-width:***) @font-face
响应式布局 responsive design @media 属性 bootstrap css 分析: @media (min-width:768px){ body{***} } use @medi ...
- Loadrunner如何进行有效的IP欺骗
柠檬班的清风同学某天紧急求助如何搞IP欺骗,端午节后,抽时间把这个事情搞定啦!跟大家详细的讲讲IP欺骗的运用和理解. 一.什么是IP欺骗 给你客户端的IP地址加个马甲,让服务器端识别不到是同一个IP地 ...
- mysql.user细节三问
一.如何拒绝用户从某个精确ip访问数据库假如在mysql.user表中存在用户'mydba'@'192.168.85.%',现在想拒绝此用户从某个精确ip访问数据库 # 创建精确ip用户,分配不同的密 ...
- Requests中出现大量ASYNC_NETWORK_IO等待
七夕活动,网页显示异常:504 Gateway Time-out The server didn't respond in time.开发询问数据库是否正常,当时正连接在实例上查询数据,感觉响应确实慢 ...
- 阿里云配置 https 证书
阿里云配置中心 https://yundun.console.aliyun.com/?p=cas#/cas/home 证书审核通过后复制到 ecs scp /path/filename usernam ...
- 二维码扫描开源库ZXing定制化【转】
转自:http://www.cnblogs.com/sickworm/p/4562081.html 最近在用ZXing这个开源库做二维码的扫描模块,开发过程的一些代码修改和裁剪的经验和大家分享一下. ...