0

我计划创建一个现场编程竞赛评委,例如 PC^2,Domjudge。

我想构建基于 Web(本地主机)而不是桌面应用程序的法官系统。

这是我的目标:

  1. 裁判系统应该像PC2一样跨平台[与JRE一起运行]
  2. 使用 Ruby、Python、PHP 或 Node.JS

现在的问题是使系统跨平台哪种语言最可取?

Ruby、Python、PHP 或 Node.JS 可以处理系统命令吗?[例如。编译 C++/Java 源代码并运行程序] 他们如何处理进程的时间限制?

谁能给我一些有用的链接?我用谷歌搜索了很多,但没有找到任何关于跨平台系统的信息。

4

1 回答 1

1

如果您正在规划一个基于 Web 的编程竞赛裁判系统,那么它将是跨平台的,因为它是在 Web 上的,至少从用户的角度来看是这样。但是如果你的意思是从服务器的角度跨平台,你将需要一个跨平台的进程管理库,例如:

升压过程(www.highscore.de/boost/process/)

PoCo (pocoproject.org/)(进程命名空间,在 Foundation 中)

Psutil (code.google.com/p/psutil/) (for Python) 如果你选择 python 我推荐Web.py作为 web 框架

Qt (qt-project.org/) 您可以使用 Qt,它以独立于平台的方式实现许多操作系统实用程序,例如。进程、线程、网络、GUI...

wxWidgets还包含一个跨平台进程控制库,用于通过 wxProcess 类生成子进程。

....应该有更多的图书馆...

使用Node.js,您可以创建子进程,但我不确定您可以使用它多远,例如,我不知道您是否可以继续限制进程的内存。

但是,如果出于任何原因您决定为特定平台(如GNU/Linux )开发软件,您可以从了解该特定平台(Linux (POXIS)Windows (Win32 API))的进程管理如何工作开始

于 2013-05-17T19:22:20.340 回答