From fa9877258d5e4c99fd30d4e2acdd286f4793b84d Mon Sep 17 00:00:00 2001 From: lhw2002426 <1466397747@qq.com> Date: Tue, 5 Dec 2023 06:10:58 +0800 Subject: [PATCH] use html from remote repo --- apps/c/nginx/.gitignore | 4 +- apps/c/nginx/html/README.md | 1 - apps/c/nginx/html/_404.md | 1 - apps/c/nginx/html/_coverpage.md | 16 -- apps/c/nginx/html/_media/bg-bluesea.jpg | Bin 122531 -> 0 bytes apps/c/nginx/html/_media/car-ee.svg | 1 - apps/c/nginx/html/_media/communities.svg | 4 - apps/c/nginx/html/_media/custom.css | 49 ---- apps/c/nginx/html/_media/favicon.ico | Bin 15406 -> 0 bytes apps/c/nginx/html/_media/logo.png | Bin 15865 -> 0 bytes apps/c/nginx/html/_media/logo.svg | 1 - apps/c/nginx/html/_media/os20years.svg | 1 - apps/c/nginx/html/_media/overview.svg | 4 - .../html/_media/qrcode_4_ubiquitousos.jpg | Bin 27901 -> 0 bytes apps/c/nginx/html/_media/syswonder.svg | 4 - apps/c/nginx/html/_navbar.md | 12 - apps/c/nginx/html/_sidebar.md | 8 - apps/c/nginx/html/community.md | 135 --------- apps/c/nginx/html/contact.md | 25 -- apps/c/nginx/html/contrib.md | 95 ------- apps/c/nginx/html/courses.md | 44 --- apps/c/nginx/html/en/_coverpage.md | 15 - apps/c/nginx/html/en/_navbar.md | 6 - apps/c/nginx/html/en/_sidebar.md | 5 - apps/c/nginx/html/en/community.md | 17 -- apps/c/nginx/html/en/contact.md | 21 -- apps/c/nginx/html/en/courses.md | 5 - apps/c/nginx/html/en/intro.md | 3 - apps/c/nginx/html/en/projects.md | 27 -- apps/c/nginx/html/index.html | 92 ------ apps/c/nginx/html/intro.md | 185 ------------- apps/c/nginx/html/news/README.md | 0 apps/c/nginx/html/news/news.md | 262 ------------------ apps/c/nginx/html/projects.md | 17 -- apps/c/nginx/html/uos.md | 41 --- 35 files changed, 2 insertions(+), 1099 deletions(-) delete mode 100644 apps/c/nginx/html/README.md delete mode 100644 apps/c/nginx/html/_404.md delete mode 100644 apps/c/nginx/html/_coverpage.md delete mode 100644 apps/c/nginx/html/_media/bg-bluesea.jpg delete mode 100644 apps/c/nginx/html/_media/car-ee.svg delete mode 100644 apps/c/nginx/html/_media/communities.svg delete mode 100644 apps/c/nginx/html/_media/custom.css delete mode 100644 apps/c/nginx/html/_media/favicon.ico delete mode 100644 apps/c/nginx/html/_media/logo.png delete mode 100644 apps/c/nginx/html/_media/logo.svg delete mode 100644 apps/c/nginx/html/_media/os20years.svg delete mode 100644 apps/c/nginx/html/_media/overview.svg delete mode 100644 apps/c/nginx/html/_media/qrcode_4_ubiquitousos.jpg delete mode 100644 apps/c/nginx/html/_media/syswonder.svg delete mode 100644 apps/c/nginx/html/_navbar.md delete mode 100644 apps/c/nginx/html/_sidebar.md delete mode 100644 apps/c/nginx/html/community.md delete mode 100644 apps/c/nginx/html/contact.md delete mode 100644 apps/c/nginx/html/contrib.md delete mode 100644 apps/c/nginx/html/courses.md delete mode 100644 apps/c/nginx/html/en/_coverpage.md delete mode 100644 apps/c/nginx/html/en/_navbar.md delete mode 100644 apps/c/nginx/html/en/_sidebar.md delete mode 100644 apps/c/nginx/html/en/community.md delete mode 100644 apps/c/nginx/html/en/contact.md delete mode 100644 apps/c/nginx/html/en/courses.md delete mode 100644 apps/c/nginx/html/en/intro.md delete mode 100644 apps/c/nginx/html/en/projects.md delete mode 100644 apps/c/nginx/html/index.html delete mode 100644 apps/c/nginx/html/intro.md delete mode 100644 apps/c/nginx/html/news/README.md delete mode 100644 apps/c/nginx/html/news/news.md delete mode 100644 apps/c/nginx/html/projects.md delete mode 100644 apps/c/nginx/html/uos.md diff --git a/apps/c/nginx/.gitignore b/apps/c/nginx/.gitignore index af344fbce..7607d9557 100755 --- a/apps/c/nginx/.gitignore +++ b/apps/c/nginx/.gitignore @@ -1,3 +1,3 @@ nginx-app -*.img -html \ No newline at end of file +html +*.img \ No newline at end of file diff --git a/apps/c/nginx/html/README.md b/apps/c/nginx/html/README.md deleted file mode 100644 index 8b1378917..000000000 --- a/apps/c/nginx/html/README.md +++ /dev/null @@ -1 +0,0 @@ - diff --git a/apps/c/nginx/html/_404.md b/apps/c/nginx/html/_404.md deleted file mode 100644 index c42d46c76..000000000 --- a/apps/c/nginx/html/_404.md +++ /dev/null @@ -1 +0,0 @@ -Oops, not found... diff --git a/apps/c/nginx/html/_coverpage.md b/apps/c/nginx/html/_coverpage.md deleted file mode 100644 index 21a5a2dfe..000000000 --- a/apps/c/nginx/html/_coverpage.md +++ /dev/null @@ -1,16 +0,0 @@ -![](_media/logo.svg ':size=120x120') - -# syswonder 矽望泛在操作系统社区 - -> 针对实时非实时任务混合运行的边缘计算场景 - -> 面向非对称多处理器SoC(MCU, CPU, DSP等)硬件平台 - -> 用内存安全的Rust语言构建安全、高效、专用的新型态泛在操作系统 - -[ GitHub](https://github.com/syswonder) -[ 技术文档](https://report.syswonder.org) -[了解更多 ](#main) - - -![](_media/bg-bluesea.jpg) diff --git a/apps/c/nginx/html/_media/bg-bluesea.jpg b/apps/c/nginx/html/_media/bg-bluesea.jpg deleted file mode 100644 index a9492ecb4404549e18bebe00471f891bd6f24ec4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 122531 zcmbrlbyyrhv*?YxTYvz;WpVcecU|0dan}S(f_rfH#oe6*ci+V!xLfc5f!xhG@44rG ze}6TzGyTj{-P6CS?y8=7X8$h#-GakYl2ep}gNKKMQ-E!7f4AXcWk1^6z`?1i!U5pm z;LzZZ;R)anVI_Fj1_w_Lhx}h9C=YIlg`Csk- zoDmD)|F^{gg#Xb-f-6A$pE5$#ziNN`;qcKAs*vCi;c4Lz@Zk~h;r|Z8y@R!d4F6y9 zPYEW72uSeAa44u~=opwVg#kP`ctqGWL?jd>R1_pM6i;{rI7ECT0vcp)LRvf&NlhLi z3wJuyuhfZB#DzfK26{^_l0J_)=_I~jv~4X32CFyxzmh$RG-Mh>t{AlitW&)D&F4eG zq;5M*vVx!{9q;1Qfv{_coX?kCd0m@kbPO_bW)^^uu!w@9lAgYSp{1tq0r{L&GDZW8<^Xg~g@imDR1i{e#1!tUOEdYVs{|lR}K2aLg@w)R7-xXUvmuReKOk~S8sx?1l$;9wUd~N=3&Mo{Vxtd z7>Jxa3`IxxAB;7~<{yuzm$%P9rY|9(VgJpQoRa$AXyD@iz%@2C|A()C;C~1q|AV-* z`ya^b|4X?BCk=-HBY=4d85s%XpP-?kqN1T;qhr7}Y(gv?EZ9znPlS&P`%#e+6O&TW zQBqLS0T>tn{5<@!vc`X5jllo^Ze$e>3-Q0qhYuTErwJ`DGy6M|Ef_kLZ;H9xlciEE z2?@VOvdLm9ebtxu4D!#F>5Pu6N2$-G@2`$0f;ylNhrwR)0jEMpps)t2MUa~%5m@^>?YRjFEA|;?)J;%{A;{P(-p2L`=_U1D`Qo&{xp+Hc~iDc~~L#3tlq)z=R4xYAL*QVhUPL;X>_uYYd8LL`k58 zM!QpZgc|WN;}HXCbECACZUk=|rNjD|9Je(ydfb59>uiau=n0dZ-h|XwUGfkm4~4Pi z+EvS(YI;cmx$!SrWk3S$xA+X$c;&h>wPQH>;27W#O7Ky8m6g>h(X zjiM$=EjsfMZHR1eEIYT#_WYoX1iBax!zYI;Oa&0OhTV7;1_gb2;|_u%P>;r)h`t;k z%z+0qmPqNq+f~GG9zqk7(2z-$0t4|h6H-!niqNtoM$yDzpX!?a#n7%FtMXr@G()_|gIHlF$z zBPIkHe40YdNNsymkhxa#2!p#~*a;QAgkw}RloutEo`uR-qfp6Qh+aw|Q!jKsI3bgW zMo9T!6)Rk(AgWl>3#r9?Y$79$5xO1|ErpeZm8^uuMusj>Iqcmg%&I;Xt-6r zwJfczN^c{n(U&AaA4S8$@rA&vm&J{zT+$tT-ntRz4VTMXl6}cY+CqoxcPL3mDT5?6 zm0e;a8Qey(o^Uy|R9&=roCQ2|DB7j)92k}gSj4n^ePn*gQKd3fXjX;_QQA@pWJr}R z<(+hv9N`)&b)pK^I~F)PRSfz(1l{9Nt5M8`%~A)UC3gLK)FrH6ERa-C(<2Ftse2WH z8bS#YTZsygqH^shVLxU?+QiiIPxgS&Iv}0`fG?Sht2s(oKXjjwj6NfVfSRrS%e+3d z64H+C~;jKDZ!46J=I2frgkp0dJqJCTW{5C5bp`Wed$A`I|9$`SQUS z2g>qOklOy;65W>(0%9$I1|2Y!M<<0$#7%@Kn%0AkE+Iv%EejYHDaPP1HecSiCcz1X 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

$!m0gA|Ho;wfdX46to8(Zd_~|uq3wRs@(boh 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 diff --git a/apps/c/nginx/html/_media/car-ee.svg b/apps/c/nginx/html/_media/car-ee.svg deleted file mode 100644 index 9ea305a99..000000000 --- a/apps/c/nginx/html/_media/car-ee.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/apps/c/nginx/html/_media/communities.svg b/apps/c/nginx/html/_media/communities.svg deleted file mode 100644 index 311f62f5c..000000000 --- a/apps/c/nginx/html/_media/communities.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - -
Syswonder
矽望开源社区
Syswonder...
面向不同应用场景的泛在操作系统
面向不同应用场景的泛在操作系统
rcore-os
开源社区
rcore-os...
learningOS
开源社区
learningOS...
基于Rust的操作系统技术探索
基于Rust的操作系统技术探索
开源操作系统教育
开源操作系统教育
Text is not SVG - cannot display
\ No newline at end of file diff --git a/apps/c/nginx/html/_media/custom.css b/apps/c/nginx/html/_media/custom.css deleted file mode 100644 index e8fb9ac70..000000000 --- a/apps/c/nginx/html/_media/custom.css +++ /dev/null @@ -1,49 +0,0 @@ -.card { - box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2); - max-width: 300px; - margin: auto; - text-align: center; - padding:16px; -} - -/* Add rounded corners to the top left and the top right corner of the image */ -.card-img { - border-radius: 5px 5px 0 0; -} - -/* Float four columns side by side */ -.card-column { - float: left; - width: 25%; - padding: 0px 10px; -} - -/* Remove extra left and right margins, due to padding in columns */ -.card-row {margin: 0 -5px;} - -/* Clear floats after the columns */ -.card-row:after { - content: ""; - display: table; - clear: both; -} - -/* Responsive columns - one column layout (vertical) on small screens */ -@media screen and (max-width: 600px) { - .card-column { - width: 100%; - display: block; - margin-bottom: 20px; - } -} - -.footer { - padding: 2.5rem; - border-top: 1px solid #eaecef; - text-align: center; - color:#4e6e8e -} - -.sidebar>h1 a img{ - max-width: 120px; -} diff --git a/apps/c/nginx/html/_media/favicon.ico b/apps/c/nginx/html/_media/favicon.ico deleted file mode 100644 index 5312bde0e46318c6cc442d68bf0c85bbbc62a84c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15406 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 diff --git a/apps/c/nginx/html/_media/logo.png b/apps/c/nginx/html/_media/logo.png deleted file mode 100644 index a529ca891861078e03f51124f6dec2f5c2b298e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15865 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 L#=6DYxUl~NP0{Ih diff --git a/apps/c/nginx/html/_media/logo.svg b/apps/c/nginx/html/_media/logo.svg deleted file mode 100644 index 595e88415..000000000 --- a/apps/c/nginx/html/_media/logo.svg +++ /dev/null @@ -1 +0,0 @@ -矽望logo \ No newline at end of file diff --git a/apps/c/nginx/html/_media/os20years.svg b/apps/c/nginx/html/_media/os20years.svg deleted file mode 100644 index 42c4cf394..000000000 --- a/apps/c/nginx/html/_media/os20years.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/apps/c/nginx/html/_media/overview.svg b/apps/c/nginx/html/_media/overview.svg deleted file mode 100644 index 6da898419..000000000 --- a/apps/c/nginx/html/_media/overview.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - -







...
Asymmetric multiprocessing SoC hardware
Asymmetric multiprocessing SoC hardware
CPU
ARM A9
CPU...
MCU
MCU
CPU
CPU
GPU/NPU
GPU/NPU
DSP
DSP
I/O Devices
I/O Devices
Type 1 Hypervisor (separation kernel)
Type 1 Hypervisor (separation kernel)
linux
linux
management apps
management apps
syscall
syscall
zone0
zone0
lib-linux
lib-linux
libs-4-webcam
libs-4-webcam
single Linux app: webcam
single Linux app: webcam
funcall
funcall
unikernel os: single address space
unikernel os: single address space
zoneU
zoneU
lib-xiuos
lib-xiuos
realtime app
realtime app
zoneR
zoneR
funcall
funcall
zoneU
zoneU
unikernel os
unikernel os
Linux app
Linux app
lib-linux
lib-linux
funcall
funcall
RTOS
RTOS
Linux
Linux
Text is not SVG - cannot display
\ No newline at end of file diff --git a/apps/c/nginx/html/_media/qrcode_4_ubiquitousos.jpg b/apps/c/nginx/html/_media/qrcode_4_ubiquitousos.jpg deleted file mode 100644 index 721aa535a4d1afcd384cf20eee572e8d8d6588cf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27901 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 - - -
syswonder
syswonder
Text is not SVG - cannot display
\ No newline at end of file diff --git a/apps/c/nginx/html/_navbar.md b/apps/c/nginx/html/_navbar.md deleted file mode 100644 index 542627367..000000000 --- a/apps/c/nginx/html/_navbar.md +++ /dev/null @@ -1,12 +0,0 @@ -- [首页](/) -- [动态](/news/) -- [项目](/projects.md) -- [课程](/courses.md) -- 关于 - - [简介](/intro.md) - - [泛在操作系统](/uos.md) - - [社区组织](/community.md) - - [如何协作](/contrib.md) - - [联系我们](/contact.md) -- [:uk: English](/en/) - diff --git a/apps/c/nginx/html/_sidebar.md b/apps/c/nginx/html/_sidebar.md deleted file mode 100644 index fb9762a5a..000000000 --- a/apps/c/nginx/html/_sidebar.md +++ /dev/null @@ -1,8 +0,0 @@ - - -* [介绍](/intro.md) -* [动态](/news/news.md) -* [项目](/projects.md) -* [课程](/courses.md) -* [社区](/community.md) -* [协作](/contrib.md) diff --git a/apps/c/nginx/html/community.md b/apps/c/nginx/html/community.md deleted file mode 100644 index 90827cf0e..000000000 --- a/apps/c/nginx/html/community.md +++ /dev/null @@ -1,135 +0,0 @@ -# 矽望开源社区 - -## 关于矽望社区 - -矽望社区和清华大学陈渝教授创建的rcore-os社区及learningOS社区互相支持,各有侧重。 - -矽望syswonder社区致力于泛在操作系统的开源发展与建设,关注面向不同应用场景的泛在操作系统构建及应用技术,推动泛在操作系统在不同领域的落地。矽望社区很多项目技术及参考实现来自rcore-os社区,贡献者培育及课程训练等主要依托learningOS社区。rcore-os主要探索基于Rust语言的系统软件(主要是Kernel、Hypervisor、Runtime、Driver等)设计与构造的新思路,learningos主要培养操作系统人才。三个社区相互支持与帮助,共同推动操作系统的发展。 - - - -![](_media/communities.svg) - -### rcore-os社区 - -[rcore-os开源社区](https://github.com/rcore-os/)主要包含了清华大学和国内外开源爱好者从2018年以来用Rust语言开发操作系统内核和其它相关组件的OS教学和科研探索。主要包括: - - - [用于教学的rCore-Tutorial v3 kernel](https://github.com/rcore-os/rCore-Tutorial-v3) - - [基于rCore-Tutorial v3 kernel的OS教材](https://github.com/rcore-os/rCore-Tutorial-Book-v3/) - - [支持Linux syscall的rCore kernel](https://github.com/rcore-os/rCore) - - [支持Linux/Zircon syscall的zCore kernel](https://github.com/rcore-os/zCore) - - [简单的Hypervisor:RVM](https://github.com/rcore-os/RVM) - - [组件化kernel框架:arceos](https://github.com/rcore-os/arceos) - -以及各种奇怪的OS、hypervisor、runtime、driver、与OS无关并可用于组合出不同OS的组件等(驱动,文件系统、网络协议栈等)。 - -### learningOS社区 - -[开源操作系统训练营learningOS](https://github.com/learningOS)作为一个面向OS教育的开源社区,致力于培养操作系统人才。它将建立一种长期持续发展的操作系统训练营模式,即各种操作系统相关的学习资源都开源并整理集中在一起,导师/助教和学生/爱好者之间基于要做的实验或项目不定期/定期的进行交流。学生/爱好者完成了一定程度的学习和训练后,除了自身得到能力的提升外,还可获得相关证书和就业/学习等机会和相关推荐等,推动他在未来的进一步发展。目前的主要项目包括: - -- [操作系统课程slides](https://github.com/LearningOS/os-lectures) -- [开源操作系统训练营课程](https://github.com/LearningOS/rust-based-os-comp2023) -- [Rust编程训练课程](https://github.com/LearningOS/rustlings) -- [内核实现比赛课程](https://github.com/LearningOS/oscomp-kernel-training) - -## 矽望社区文档 - -文档主仓库在 [https://github.com/syswonder/report](https://github.com/syswonder/report),提交报告的方法和[提交代码的方法](contrib.md)一致。 - -文档可以在线查看,可以访问 [https://report.syswonder.org](https://report.syswonder.org), 或者 [https://syswonder.github.io/report](https://syswonder.github.io/report) - - - -## 矽望开源技术委员会 - -

- - -
-
- caodg -
-

曹东刚

-

北京大学

- 更多 -
-
-
- -
-
- ck -
-

陈康

-

清华大学

- 更多 -
-
-
-
- ---- - -
-
-
- gy -
-

郭耀

-

北京大学

- 更多 -
-
-
- -
-
- ld -
-

李栋

-

中科院计算所

- 更多 -
-
-
- - -
-
- xdl -
-

薛栋梁

-

上海交通大学

- 更多 -
-
-
-
- ---- - -
-
-
- zyw -
-

赵永望

-

浙江大学

- 更多 -
-
-
- -
- - - diff --git a/apps/c/nginx/html/contact.md b/apps/c/nginx/html/contact.md deleted file mode 100644 index 219ff63cc..000000000 --- a/apps/c/nginx/html/contact.md +++ /dev/null @@ -1,25 +0,0 @@ -# 联系我们 - - **开源仓库** - -主仓库在 Github [https://github.com/syswonder](https://github.com/syswonder) - -如果您有意参与项目开发,请将其下的项目设置为upstream - -我们在GitLink https://gitlink.org.cn/syswonder 也有镜像 - - **邮件列表** - -请访问 [https://maillist.syswonder.org](https://maillist.syswonder.org) -加入感兴趣项目的邮件列表,一起讨论。 - -邮件列表是推荐的交流方式。 - - - **微信公众号** - -重要信息将通过微信公众号“**泛在操作系统**”发布 - -![](_media/qrcode_4_ubiquitousos.jpg) - - diff --git a/apps/c/nginx/html/contrib.md b/apps/c/nginx/html/contrib.md deleted file mode 100644 index eec751120..000000000 --- a/apps/c/nginx/html/contrib.md +++ /dev/null @@ -1,95 +0,0 @@ -# 如何用git协作 - -假定: - -- 你的github账号为 panda - -- 要贡献的上游仓库为 https://github.com/syswonder/syswonder-web.git - -- 你的个人主库为 https://github.com/panda/syswonder-web - -**1. Fork repo** - -在浏览器中打开上游主库 https://github.com/syswonder/syswonder-web - -点击右上角的"Fork" 按钮 - -**2. Clone repo** - -将Fork得到的个人主库 clone到本地 - -```bash -git clone https://github.com/panda/syswonder-web -``` - -!> 请记得将panda替换为您自己的用户名 - - -```bash -# 设置 upstream -git remote add upstream https://github.com/syswonder/syswonder-web.git -# 禁止直接向 upstream 推送代码 -git remote set-url --push upstream no_push -``` - -**3. work, commit & push** - -多人协作不要在主分支main上工作,要另建工作分支。 - -为本次工作创建一个分支,命名为 `dev` - -```bash -git checkout -b dev -``` - -此时就可以在该分支下工作了, 不断修改代码,不断 commit - -```bash -git add . - -git commit -m "your commit message" -``` - -如果经过测试,觉得在本地完成了代码工作,就可以将代码推送到自己的个人主库 -中了。 - -```bash -git push origin dev -``` - -push到自己的个人主库中后,就可以准备创建`Pull Request`了。 - -**4. pull request** - -为防冲突,先同步upstream - -```bash -git fetch upstream -git merge upstream/main -``` - -此时请确保本地位于工作分支。如果合并过程有冲突,要负责解决冲突,并提交。 - -将消解了冲突的最新本地代码,推送到个人主库的dev分支。 - -```bash -git push origin dev -``` - -到自己个人主库的首页, 准备 **Pull Request** , - -base repo 选择 syswonder/syswonder-web main - -head repo 选择 panda/syswonder-web dev - -提交,等待上游库管理员审核。 - -**5. sync origin main** - -```bash -git fetch upstream -git checkout main -git merge upstream/main -git push origin main -git checkout dev -``` diff --git a/apps/c/nginx/html/courses.md b/apps/c/nginx/html/courses.md deleted file mode 100644 index 7abd7e0d9..000000000 --- a/apps/c/nginx/html/courses.md +++ /dev/null @@ -1,44 +0,0 @@ -# 矽望开源课程 - -矽望社区开源课程目前主要依托社区参与人员作为教师主讲的各类课程,这些课程的相关资源均对外开放。 - -## 开源操作系统训练营 - - **当前课程: 2023春夏季开源OS训练营第三阶段 ArceOS** - -时间:2023年5月8日-5月26日 - -详情与报名:[https://os2edu.cn/course/109](https://os2edu.cn/course/109) - -**训练营资源** - -[https://github.com/learningOS](https://github.com/learningOS) - -!> 希望参与矽望社区项目的开发但之前没有相关开发经验的朋友,建议参加开源操作系统训练营,或自学[以往的训练营资料](https://github.com/learningOS)。 - -邮件列表:[rustos-tutorial@syswonder.org](https://maillist.syswonder.org/mailman3/lists/rustos-tutorial.syswonder.org/) - - -## Rust实现OS课程 - -本课程内容来自清华大学计算机系向勇、陈渝等老师开设主讲的操作系统课程。 - -OS 课程是计算机专业核心课,从计算机系统的视角进行内容组织与调整,以教学操 -作系统uCore/rCore和risc-v CPU为实验环境,讲授操作系统的概念、基本原理和 -实现技术,帮助学生了解和掌握大型复杂系统软件的分析方法和核心设计思路,并 -为学生充分利用操作系统功能进行应用软件研究和开发打下扎实的基础。 - -目前包括三部分内容: - -- **讲义** - -[ https://github.com/rcore-os/os-lectures](https://github.com/rcore-os/os-lectures/) - -- **教材** - -[ https://github.com/rcore-os/rCore-Tutorial-Book-v3](https://github.com/rcore-os/rCore-Tutorial-Book-v3) - -- **实验** - -[ https://github.com/rcore-os/rCore-Tutorial-v3](https://github.com/rcore-os/rCore-Tutorial-v3) - diff --git a/apps/c/nginx/html/en/_coverpage.md b/apps/c/nginx/html/en/_coverpage.md deleted file mode 100644 index 7e3f782fe..000000000 --- a/apps/c/nginx/html/en/_coverpage.md +++ /dev/null @@ -1,15 +0,0 @@ -![](../_media/logo.svg ':size=120x120') - -# SYSWONDER Ubiquitous Operating System Community - -> For edge computing scenaros with mixed real-time and non-real-time jobs - -> On asymmetric multile processors SoC(MCU, CPU, DSP, etc) hardware - -> Building safe and efficent new ubiquitous OS in memory-safe Rust language - -[ GitHub](https://github.com/syswonder) -[ TechReports](https://report.syswonder.org) -[Readme ](#main) - -![](../_media/bg-bluesea.jpg) diff --git a/apps/c/nginx/html/en/_navbar.md b/apps/c/nginx/html/en/_navbar.md deleted file mode 100644 index 29755580f..000000000 --- a/apps/c/nginx/html/en/_navbar.md +++ /dev/null @@ -1,6 +0,0 @@ -- [Home](/en/) -- [Introduction](/en/intro.md) -- [Projects](/en/projects.md) -- [Community](/en/community.md) -- [Contact](/en/contact.md) -- [:cn: 中文](/) diff --git a/apps/c/nginx/html/en/_sidebar.md b/apps/c/nginx/html/en/_sidebar.md deleted file mode 100644 index 7a8a33000..000000000 --- a/apps/c/nginx/html/en/_sidebar.md +++ /dev/null @@ -1,5 +0,0 @@ - - -* [Intro](/en/intro.md) -* [Community](/en/community.md) -* [Contact](/en/contact.md) diff --git a/apps/c/nginx/html/en/community.md b/apps/c/nginx/html/en/community.md deleted file mode 100644 index b66d15d88..000000000 --- a/apps/c/nginx/html/en/community.md +++ /dev/null @@ -1,17 +0,0 @@ -# Syswonder Open Source Community - -## Open Source Technical Community - -**Chair** - -- Yu Chen, Tsinghua University - -**Members** - -- Donggang Cao, Peking University -- Kang Chen, Tsinghua University -- Yao Guo, Peking University -- Dong Li, Institute of Computing Technology, Chinese Academy of Sciences -- Dongliang Xue, Advanced Institute of Information Technology, Peking University - - diff --git a/apps/c/nginx/html/en/contact.md b/apps/c/nginx/html/en/contact.md deleted file mode 100644 index 9b21b808e..000000000 --- a/apps/c/nginx/html/en/contact.md +++ /dev/null @@ -1,21 +0,0 @@ -# Contac us - - **Source Code Repository** - -The main repository is at Github [https://github.com/syswonder](https://github.com/syswonder) - -We also maintain mirrors at GitLink https://gitlink.org.cn/syswonder - - **Mail lists** - -Please visit [https://maillist.syswonder.org](https://maillist.syswonder.org) to join the related mail lists you are interested in. - -Mail list is the recommended way to discuss projects. - - **WeChat Official Account** - -Please follow the WeChat public account "UbiquitousOS" (Chinese name: 泛在操作系统) to get more UOS information. - -![](../_media/qrcode_4_ubiquitousos.jpg) - - diff --git a/apps/c/nginx/html/en/courses.md b/apps/c/nginx/html/en/courses.md deleted file mode 100644 index caeebde98..000000000 --- a/apps/c/nginx/html/en/courses.md +++ /dev/null @@ -1,5 +0,0 @@ -# Syswonder tutorials - - - - diff --git a/apps/c/nginx/html/en/intro.md b/apps/c/nginx/html/en/intro.md deleted file mode 100644 index cc5ed38e8..000000000 --- a/apps/c/nginx/html/en/intro.md +++ /dev/null @@ -1,3 +0,0 @@ -# Syswonder UOS Research Plan - - diff --git a/apps/c/nginx/html/en/projects.md b/apps/c/nginx/html/en/projects.md deleted file mode 100644 index e7e48554d..000000000 --- a/apps/c/nginx/html/en/projects.md +++ /dev/null @@ -1,27 +0,0 @@ -# Syswonder Open Source Projects - - -## rcore - -Reusable operating system kernel modules implemented in Rust. - -Mail list: [bulletin@syswonder.org](https://maillist.syswonder.org/mailman3/lists/bulletin.syswonder.org/) - -## sysHyper - -SysHyper is a separation kernel hypervisor implemented in Rust language. -It is highly simplified and optimized for time and space partitioning. -It is loaded by a Linux system. Once activated, it runs bare-metal, and -splits off parts of the system' resources and assigns them to Unikernel -OSs in different zones. The SysHyper design references much from [jailhouse](https://github.com/siemens/jailhouse). - -Mail list: [hypervisor@syswonder.org](https://maillist.syswonder.org/mailman3/lists/hypervisor.syswonder.org/) - -## rukos - -rukos (Rust UniKernel OS) is a [Unikernel](https://en.wikipedia.org/wiki/Unikernel) operating system, supporting Linux applications. rukos is built from the kernel framework [ArceOS](https://github.com/rcore-os/arceos). ArceOS defines a set of interfaces among different os modules. rukos addes/optimizes/replaces necessary modules to meet the requirements of different ubiquitous applications. As ArceOS, rukos is developped in type-safe Rust language. - -Repo: [rukos@github](https://github.com/syswonder/rukos) (open soon) - -Mail list: [unikernel@syswonder.org](https://maillist.syswonder.org/mailman3/lists/unikernel.syswonder.org/) - diff --git a/apps/c/nginx/html/index.html b/apps/c/nginx/html/index.html deleted file mode 100644 index b7e003598..000000000 --- a/apps/c/nginx/html/index.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - Syswonder | 矽望泛在操作系统社区 - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - diff --git a/apps/c/nginx/html/intro.md b/apps/c/nginx/html/intro.md deleted file mode 100644 index 2d9538f34..000000000 --- a/apps/c/nginx/html/intro.md +++ /dev/null @@ -1,185 +0,0 @@ -# 矽望:是什么,为什么 - -## 简介 - -**矽望Syswonder是什么?** - - -矽望是一个开源社区,由一群系统软件爱好者自发形成,致力于探索和构建适合特定泛在应用场景的新形态操作系统。 - -在当前阶段,主要目标是针对实时非实时任务混合运行的边缘计算场景,如医疗设备、车辆控制、工业控制、无人系统等领域,面向非对称多处理器SoC(MCU, CPU, DSP等)新型硬件平台对现有操作系统管理机制带来的挑战,在操作系统架构和实现机制上尝试创新: - -- 在架构方面,现有宏内核存在系统复杂性高的问题,微内核存在性能差的问题,我们将借鉴separation kernel、unikernel等设计思想,探索新形态的操作系统架构,尝试新的应用运行和资源管理方式。 - -- 在实现机制方面,现有操作系统主要采用C语言实现,C语言代码容易存在内存方面的缺陷。我们将用内存安全的Rust语言构建安全、高效、专用的新型态泛在操作系统。 - -为了实现上述目标,社区将主要聚焦下述项目: - -- 一个轻量化的Type 1 hypervisor,主要遵循[separation kernel](https://en.wikipedia.org/wiki/Separation_kernel)思想,主要功能 - 是通过严格分区(zone)保证各个分区在时间和空间上的严格隔离,从而 - 可以同时支持各个分区独立互不干扰运行。分区常见的形式是轻量虚拟机。通过 - Type 1 hypervisor的分区隔离,实时RTOS和非实时的Linux或Android虚拟机可 - 以正常运行,满足各自的应用需求。separation kernel常见于面向高可靠高安全(safety)应用的操作系统,如[PikeOS](https://www.sysgo.com/fileadmin/user_upload/data/professional_article_download/SYSGO_PA_2019-03_Separation_Kernel_as_a_basis_for_certifiable_applications_and_systems.pdf)。 - 目前设计支持三种分区:承担系统管理任务的zone0,一般是简化版的Linux;承 - 担高算力计算任务的zoneU,一般是unikernel OS;承担实时计算任务的zoneR, - 一般是面向MCU的RTOS。 - -- 一个兼容Linux应用的轻量化库操作系统,主要遵循[unikernel](https://en.wikipedia.org/wiki/Unikernel)设计思想,考虑到边缘泛在计算场景下,应用通常数目有限且相对固定,因此将操作系统简化设计为只支持单应用,将内核功能封装为库,以系统调用的形式提供给应用,应用直接运行在内核态。这种库形态的操作系统应用性能会有极大提升,安全问题(security)主要交给底层的Type 1 hypervisor解决。库形态的操作系统需要良好的工具支持,以方便用户根据单一应用生成构造可运行的二进制镜像,如[unikraft](https://unikraft.org)。 - -- 一组用Rust语言实现的操作系统基础构件(component),如文件系统、网络协议栈、内存管理器、消息通信机制等。基于这些构件可实现特定的库操作系统。 - -- 对Hypervisor等关键系统进行形式化验证。 - -底层硬件方面,将面向非对称多处理器SoC(MCU, CPU, DSP等)新型硬件平台。前期将基于QEMU,之后将基于物理开发板进行。 - -![](_media/overview.svg) - -## 动因 - -为什么我们要开展上述研究工作?原因是我们认为目前的应用需求和运行平台及环 -境正在急剧变化,进入一个人机物融合泛在计算的新时代。而当前主流的通用操作 -系统如Linux、Android等在结构和特性等方面已经难以适应这种变化,亟需新形态 -的操作系统支撑,这种新形态的操作系统被北京大学教授、中科院院士梅宏称为[“ -泛在操作系统”](http://www.bulletin.cas.cn/publish_article/2022/1/20220105.htm)。 - -梅宏院士认为,由于泛在计算场景的领域行业特定性、泛在计算资源的广谱多样性 -和极端特异性,泛在操作系统的领域性和专用性将会比较突出,有必要面向不同的 -应用模式和场景构建不同的泛在操作系统。因此,不会有“大一统”的通用、普适的 -泛在操作系统,而是会存在领域或应用场景定制的多样性的泛在操作系统。梅宏院 -士同时提出了操作系统发展的“**20年周期律**”,认为操作系统已经进入新的20年 -发展周期,蕴含广阔的发展创新空间。 - -在这样的背景下,我们建立矽望开源社区,面向实时任务与非实时任务混合运行的 -边缘计算场景,开展新形态操作系统的探索研究与实验验证,希望能吸引汇聚国内 -外对此感兴趣的开发者,共同打造有影响力的成果产出。 - -### 操作系统的20年周期律 - -操作系统是计算系统的核心,也是信息产业生态的核心,更是信息时代安全的基石。 -操作系统向下管理各种硬件资源,向上为用户和应用程序提供服务支持。正是操作 -系统的出现,才使得计算机从早期的专用专属走向如今的通用大众,并带来计算机 -应用的繁荣。 - -考察操作系统几十年来的发展,其主要驱动力是面向计算机硬件的迅速发展,以更 -好、更高效地管理硬件资源并充分发挥硬件资源所提供的计算能力;同时,面向新 -的应用需求和用户需求,沉淀应用领域共性,提供更便利、易用的人机交互和应用 -支撑。因此,随着新型硬件资源的发展和新型应用模式的出现,操作系统不断演化 -和变迁。 - - -梳理操作系统发展的重要事件及其时间节点,其重大变迁存在“**20 年周期律**”,即 -每 20 年出现一次跨越式发展机遇,诞生新一代操作系统。主机计算时代(20 世 -纪 60—80 年代)的 IBM OS/360、DEC VMS 和 UNIX,个人计算时代( 20 世纪 80 - 年代—2000年)的微软 Windows 和开源 Linux,以及移动计算时代(2000—2020  -年)的谷歌 Android 和苹果 iOS 是各自时代的代表性操作系统,并引领了各自领 -域的操作系统生态。当然,“20 年周期律”并不是说操作系统的新生态取代了旧生 -态,而是新、旧生态并存,但新生态相比旧生态在装机数量和用户规模上却是 1—2 - 个数量级的扩张。 - -![](_media/os20years.svg) - - -在这个变迁过程中存在几个现象:每代操作系统形成规模、占领市场、形成垄 -断后,鲜有在原赛道上后发赶超的例子;原赛道的领先者均未在新型操作系统的新 -蓝海延续其成功,如 IBM 之于个人电脑(PC)操作系统市场、微软之于智能终端 -操作系统市场等;新生态的引领者均试图采用“农村包围城市”的策略进军原有生态, -如微软进军服务器操作系统市场、谷歌进军桌面操作系统市场等。 - -“20 年周期律”是源于计算机产业发展的“贝尔定律”,即计算设备约每 10 年完成  -1 次升级换代,设备数和用户数均增加至少 1 个数量级。客观而言,新型计算模 -式及激增的新型计算设备共同催生了新型应用,带来新的蓝海和巨大创新空间,间 -次推动操作系统的升级换代和新型操作系统的诞生,进而形成新的操作系统生态。 -在每次升级换代的阶段,原赛道的领先者可能因为“思维定式”和“路径依赖”,往往 -对新蓝海的机遇反应缓慢,因而痛失良机。而新形态的引领者往往都先占据了新蓝 -海的用户入口掌控权,如微软之于个人计算、谷歌之于万维网和移动计算。对于通 -用计算领域,领先者一旦建立并完善新的产业生态,就占有了生态主导权,后发者 -就很难有机会实现赶超。历史经验表明,如果希望在操作系统领域有所作为,就必 -须把握住新蓝海出现带来的宝贵机遇。 - -### 泛在操作系统 - -当前,随着互联网向人类社会和物理世界的全方位延伸,一个万物互联的人类社会、 -信息系统、物理空间(人机物)融合泛在计算(ubiquitous computing)的时代正 -在开启。据全球综合数据资料库Statista发布的数据,2019 年全球联网的物联网 -终端数量已达百亿,超过了非物联终端的数量,2025 年预计将突破 300 亿,未来 -千亿规模已然可期。 - -面向未来人机物融合泛在计算的新模式和新场景,软件定义一切、万物均需互联、 -一切皆可编程、人机物自然交互将是其基本特征。除传统计算设备(“机”)和新兴 -物联设备(“物”)外,“人”作为一种新的重要元素的参与,构成了极其复杂且动态 -多变的计算环境。 - -所谓泛在计算,是指计算无缝融入物理环境,无处不在、无迹可寻。泛在计算的环 -境多变、需求多样、场景复杂,要求硬件资源、数据资源、软件平台、应用软件具 -有柔性灵活的软件定义能力、动态适配能力、泛在互联能力和自然交互能力: - -- 面向“物”,海量的、更为轻量级的各类计算、传感设备带来系列管理调度新挑战; - -- 面向“人”,“人在回路”导致不确定的复杂交互和动态按需定制; - -- 面向“网”,物联场景带来低延迟更可靠的刚需; - -- 面向“应用”,动态多样性带来新的共性凝练需求……; - -这些均是现有操作系统尚不具备的能力。从“20 年周期律”的视角,千亿规模的各类泛 -在物联终端和新型的泛在计算模式的出现,意味着操作系统进入新的 20 年发展周 -期的条件已然具备,新的蓝海已然出现。 - -人机物融合泛在计算模式的新特征对新型操作系统带来的挑战是全方位的:既需要 -面临“云-管-边-端-物”乃至“人”的海量异构资源尤其是各种泛在化的“端”资源的有 -效管理,也需要进行各种多样化的新型应用的共性凝练,还需要支持和适应场景动 -态多变的复杂泛在计算环境,应对开放环境带来的安全可信挑战。 - -国内外学术界和产业界已有不少面向特定计算场景和新型业务需求的新型操作系统 -实践。例如,美国西北大学提出面向信物融合的先进制造操作系统计划;谷歌公司 -提出 Fuchsia OS 计划,用于支持桌面设备、移动终端、物联网设备及其互联;大 -众汽车公司启动 vw.os 汽车操作系统计划,尝试转型“软件公司”,将可能对上下 -游产业链产生变革性影响;阿里巴巴公司推出以驱动万物智能为目标的移动操作系 -统 AliOS;华为公司发布了面向全场景、全连接的智能终端操作系统鸿蒙 OS 和  -Open Harmony 等。此外,还出现了众多的物联网节点操作系统,如 FreeRTOS、 -RIOT、Zephyr、TinyOS、Contiki、Android Things 等,而这些均可归为针对泛在 -计算场景的操作系统。 - - -上述新型操作系统实践大多是从传统的嵌入式操作系统技术途径针对特定泛在计算 -场景进行切入和扩展,在资源管理、网络协同、人机交互、应用模式等方面分别进 -行了新的技术探索。嵌入式系统主要面向微控制器等资源受限环境,并且与物理世 -界直接交互,因此需要非常轻量化,并要保证实时性(时间确定性),嵌入式系统 -及其操作系统可被视为原始的“泛在计算”尝试。近年流行的物联网操作系统则在嵌 -入式操作系统的技术基础上,强调对“连接”及建立在连接基础上的分布计算甚至 -“云-边-端”融合计算的支持,从而支撑“万物互联”的目标。嵌入式操作系统和物联 -网操作系统技术体系过于碎片化,存在所谓的“昆虫纲问题”,在计算模型、共性凝 -练、人机交互、安全保障等方面均难以满足人机物融合泛在计算的需求。 - - -基于对各类新型操作系统研发实践的梳理和对泛在计算场景的理解,梅宏院士提出, -面向人机物融合泛在计算场景,需要“沉淀”一类新型操作系统——沿袭过去以计算模 -式分类操作系统的惯例,可称为“泛在操作系统”(Ubiquitous Operating System, -UOS)。 - -### 边缘泛在计算场景 - -医疗设备、车辆控制、工业控制、无人系统等领域是典型的边缘泛在计算场景,这 -些边缘场景的典型特点是高实时高可靠任务与高算力任务混合运行,硬件资源多样 -复杂,对操作系统提出了新的挑战。 - -以车用操作系统为例。车用操作系统分为车控操作系统和车载操作系统。其中,车 -控操作系统分为安全车控操作系统和智能驾驶操作系统,安全车控操作系统面向车 -辆控制领域,比如动力系统、底盘系统、车身系统等,对实时性和安全性要求极高, -相对成熟;智能驾驶操作系统面向智能驾驶领域,应用于智能驾驶域控制器等,除 -了实时性和安全性要求外,还需要高算力支持,智能驾驶操作系统是目前汽车操作 -系统领域的竞争焦点。车载操作系统面向信息娱乐和智能座舱,主要应用于车机中 -的控制系统,主要竞争者为QNX、Linux和Android,格局相对稳定。 - -随着汽车功能逐步向网联化、智能化发展,汽车的电子电气架构由传统分布式向集 -中式和融合式发展,未来的趋势是通过一台车载中央计算机提供所有的驾驶控制以 -及座舱娱乐功能,这对车载中央计算机上的车用操作系统提出了严重挑战,要求其 -要同时满足高实时、高安全、高算力、易定制的要求,还要有强大的生态,支持实 -现软件定义汽车的愿景。 - -![](_media/car-ee.svg) - -现有的操作系统都难以满足上述需求,无论是Linux或者QNX都存在某些方面的短板, -需要在新形态内核架构、采用新型安全编程语言实现、软硬协同机制、形式化验证 -等方面进行新的探索。 - diff --git a/apps/c/nginx/html/news/README.md b/apps/c/nginx/html/news/README.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/apps/c/nginx/html/news/news.md b/apps/c/nginx/html/news/news.md deleted file mode 100644 index 86f760f4c..000000000 --- a/apps/c/nginx/html/news/news.md +++ /dev/null @@ -1,262 +0,0 @@ -# 最新动态 - ---- - -## 社区活动 - - **20231117 Hypervisor讨论会** - -时间:2023年11月17日 - -地点:计算所301会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/EIY7DTV64QQNLL3PYE5YKDHYRKRBS56Q/) - - **20231103 Hypervisor讨论会** - -时间:2023年11月3日 - -地点:计算所254会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/ENWG64ZXDAEDDLPTTUB4TUZ2B4JOOBNP/) - - **20231027 Hypervisor讨论会** - -时间:2023年10月27日 - -地点:计算所254会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/QPAUKIOVCH637IYUBTANXO6UT6GX4AIK/) - - **20231020 Hypervisor讨论会** - -时间:2023年10月20日 - -地点:计算所254会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/AZXK3IOSQVLZFRSA5PZRQ3PARTYKFPUY/) - - **20231013 Hypervisor讨论会** - -时间:2023年10月13日 - -地点:北京大学 理科1号楼1504 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/J57C543Y6PPTPGCST5EUF32Z5DM2N2LW/) - - **20230922 Hypervisor讨论会** - -时间:2023年9月22日 - -地点:计算所254会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/AKKP3XSMUMTY527DY3EY57D3RXQNFT3M/) - - **20230915 Hypervisor讨论会** - -时间:2023年9月15日 - -地点:北京大学 理科1号楼1504 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/TQDQUA7ZKSJ3TRAJZR57ODGJKZ6BUDU6/) - - **20230901 Hypervisor讨论会** - -时间:2023年9月1日 - -地点:北京大学 理科一号楼1621 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/AU7FMR2IG4Z55K3YQHCGYHTPOGNQIDCR/) - - **20230728 Hypervisor讨论会** - -时间:2023年7月28日 - -地点:北京大学 理科1号楼1504 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/JWNXJJ7VSM3PJ4RMMWBIL7ZC3ELSY24F/) - - **20230714 Hypervisor讨论会** - -时间:2023年7月14日 - -地点:计算所254会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/BS4GRKN77SHDDUBO53W5GJ6PK4WFRQME/) - - **虚拟化Hypervisor专题课程** - -自2023年6月5日晚20:00,将开始《Hypervisor虚拟化专题》课程,共分6个专题: - -1. 莫策:Rust-Shyper 开源项目 -2. 胡柯洋:Rust-Shyper 在 树莓派4B 上的移植 -3. 李宇:RVH 与 QEMU/KVM -4. 陈岳:hcHyper 开源项目 -5. 齐呈祥:hypercraft 开源项目 -6. 季朋:virtio 介绍 - -2023年6月5日-6月30日,每周一、三、五晚上20-21点,共4周12次课程,欢迎大家报名参加学习! - -报名链接:https://os2edu.cn/course/120 - -关键字:课程, 培训, 训练 - - **20230630 Hypervisor讨论会** - -时间:2023年6月30日 - -地点:计算所1401 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/VVKCKRZXARM3URYRLQZYN5ZJONMFOBWD/) - - **20230602 Hypervisor讨论会** - -时间:2023年6月2日 - -地点:北京大学 燕园大厦809会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/7QDVJZBRAURG27QWQBSHT3HMTDGJKF5M/) - - **20230526 Hypervisor讨论会** - -时间:2023年5月26日 - -地点:计算所254会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/Q3JXZA27GR6K2FZBIH4S5O2BJHQ4NL2X/) - - **2023春夏季开源OS训练营第三阶段 ArceOS** - -时间:2023年5月8日-5月26日 - -详情与报名:[https://os2edu.cn/course/109](https://os2edu.cn/course/109) - -关键字:课程, 培训, 训练 - - **20230519 Hypervisor讨论会** - -时间:2023年5月19日 - -地点:计算所254会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/WWFWGW27FZQPZFBFPBYAR7R7WE4YQLFL/) - - **20230512 Hypervisor讨论会** - -时间:2023年5月12日 - -地点:计算所422会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/Q5VGDD6ATGAUPKWALGLANHVJ4Y6P5WXU/) - - **20230428 Hypervisor讨论会** - -时间:2023年4月28日 - -地点:北京大学 理科1号楼1504 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/HAIOYZAROAJKRSBBDEXIUWCH5B37NITK/) - - **20230421 Hypervisor讨论会** - -时间:2023年4月21日 - -地点:计算所254会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/DI7VM2ZF5P3BIGOZW3BEPE7XUOEUYGEX/) - - **20230414 Hypervisor讨论会** - -时间:2023年4月14日 - -地点:北京大学 理科1号楼1504 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/557LS7KMDBTL4DOP4IHX5PCTPQXOIHC4/) - - **20230407 Hypervisor讨论会** - -时间:2023年4月7日 - -地点:北京大学 理科1号楼1504 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/5UMVBROXVL75BGWUVR5KPK7KCKYSTEWF/) - - **20230331 Hypervisor讨论会** - -时间:2023年3月31日 - -地点:计算所850 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/MCS4JOBAOTN2TIRUPHORNN2MT5UZXQBN/) - - **20230324 Hypervisor讨论会** - -时间:2023年3月24日 - -地点:启迪之星 云龙湖会议室 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/H2N7LLOPLKCC3XHRXZJMIJIQSFPXAUNB/) - - **20230317 Hypervisor讨论会** - -时间:2023年3月17日 - -地点:计算所446 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/UURXNQSM4OZPXAPNX6QAARENUHHNJRGH/) - - **20230315 王雷老师rust-shyper技术交流会** - -时间:2023年3月15日 - -地点:计算所801 - - **20230310 Hypervisor讨论会** - -时间:2023年3月10日 - -地点:计算所446 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/AGZRNO2QZWL4O4CJMBGDN5Q42WNBBD7G/) - - **20230303 Hypervisor讨论会** - -时间:2023年3月3日 - -地点:计算所446 - -内容:[这里](https://maillist.syswonder.org/archives/list/hypervisor@syswonder.org/thread/KQW2DBUDWNSZ4CXDVZ7Q5QM2AQMCKBK5/) - - **20230216 第3次社区讨论会** - -时间:2023年2月16日 - -内容:[这里](https://maillist.syswonder.org/archives/list/bulletin@syswonder.org/message/ZQU6E25LAMGCOZMDDPGGGVWUCMEEUDFW/) - - **石磊老师关于Linux组件化实验的报告** - -时间:2023年2月12日20:00 - -主题:Linux组件化初步实验的结果和想法 - -扩展arceos等,形成unikernel形态,支持Linux系统调用和应用程序 - -内容: [这里](https://maillist.syswonder.org/archives/list/bulletin@syswonder.org/thread/F6DHJQ26KB2LB4AOLWVDVVAEGPD4P6PL/) - - **2023年第2次社区讨论会** - -时间:2023年2月5日20:30 - -主题:2022秋冬季训练营总结报告&组件化操作系统的技术交流 - -内容: [这里](https://maillist.syswonder.org/archives/list/bulletin@syswonder.org/thread/3HOUPTUZKPPSK6KWRHL3AR257CNAS35A/) - -[#TencentMeeting: 584-567-140](https://meeting.tencent.com/dm/ElqF4FerRXQ3) - - **2023年第1次社区讨论会** - -时间:2023年2月2日20:00 - -主题:社区项目介绍、安排与动员 - -[#TencentMeeting: 833-996-381](https://meeting.tencent.com/dm/swqv5Kw07MGu) diff --git a/apps/c/nginx/html/projects.md b/apps/c/nginx/html/projects.md deleted file mode 100644 index a13b6fec5..000000000 --- a/apps/c/nginx/html/projects.md +++ /dev/null @@ -1,17 +0,0 @@ -# 矽望开源项目 - -## sysHyper - -Rust实现的Type-1虚拟机监视器(Hypervisor),采用基于基础构件的可重构设计思想,主要提供硬件资源虚拟化、分区安全隔离的能力。sysHyper的设计借鉴了[jailhouse](https://github.com/siemens/jailhouse)。 - -项目地址: [https://github.com/syswonder/sysHyper](https://github.com/syswonder/sysHyper) - -邮件列表: [hypervisor@syswonder.org](https://maillist.syswonder.org/mailman3/lists/hypervisor.syswonder.org/) - -## rukos - -rukos(Rust UniKernel OS)是单一内核操作系统[Unikernel](https://en.wikipedia.org/wiki/Unikernel),支持linux应用程序。rukos基于组件化的kernel框架[ArceOS](https://github.com/rcore-os/arceos)来构建。ArceOS定义了一系列的操作系统不同模块之间的交互接口。rukos致力于在此框架之上添加实际系统所需要的模块,以及替换和优化内建的模块,用以适配不同的应用场景。与ArceOS一样,rukos 使用Rust语言进行开发,能够充分利用Rust语言自身的安全特性,方便的构建工具以及快速发展的扩展库。 - -项目地址: [https://github.com/syswonder/rukos](https://github.com/syswonder/rukos) - -邮件列表: [unikernel@syswonder.org](https://maillist.syswonder.org/mailman3/lists/unikernel.syswonder.org/) diff --git a/apps/c/nginx/html/uos.md b/apps/c/nginx/html/uos.md deleted file mode 100644 index 49d05173d..000000000 --- a/apps/c/nginx/html/uos.md +++ /dev/null @@ -1,41 +0,0 @@ -# 泛在操作系统相关信息 - - **梅宏教授对泛在操作系统的系统性阐述:** - -梅宏, 曹东刚, 谢涛. [泛在操作系统:面向人机物融合泛在计算的新蓝海](http://www.bulletin.cas.cn/publish_article/2022/1/20220105.htm). 中国科学院院刊, 2022, 37(1): 30-37 - -MEI Hong, CAO Donggang, XIE Tao. Ubiquitous Operating System: Toward the Blue Ocean of Human-cyber-physical Ternary Ubiquitous Computing. Bulletin of Chinese Academy of Sciences, 2022, 37(1): 30-37 - - [阅读PDF](http://www.bulletin.cas.cn/zgkxyyk/ch/reader/create_pdf.aspx?file_no=20220105&year_id=2022&quarter_id=1&falg=1) [阅读微信公众号](https://mp.weixin.qq.com/s/qrERzaEN_FuXy40MbW8Zyw) - - **泛在操作系统公众号** - -在微信中搜索 "泛在操作系统",或扫描下面的二维码 - -![](_media/qrcode_4_ubiquitousos.jpg) - - - **泛在操作系统社区** - -[CSDN UOS社区](https://bbs.csdn.net/forums/uos) - - **相关科技计划/科研项目** - -- 工信部 《[“十四五”软件和信息技术服务业发展规划](http://www.gov.cn/zhengce/zhengceku/2021-12/01/content_5655205.htm)》 - -> 专栏 5 “软件定义”创新应用培育 -> -> 构建“软件定义”技术体系。大力支持开展“软件定义”及泛在操作系统平台相关理论和技术研究,加强政产学研用对接,构建“软件定义”核心技术体系。 -> -> 培育“软件定义”创新应用生态。建立面向电子消费、高端装备、智能网联 汽车、智慧城市等典型行业领域的“软件定义”解决方案,组织开展试点示范。 培育一批核心技术、产品和系统解决方案提供商,推动产业联盟建设。探索“软件定义”生态发展与运营模式。 - -- 国家自然科学基金委 [“泛在操作系统及生态构建研究”专项](https://www.nsfc.gov.cn/publish/portal0/tab442/info81883.htm) - -> 本专项项目针对人机物融合的泛在计算环境带来的资源异构多样性和交互开放不确定性,探索泛在操作系统的结构模型与行为机理,构建包括泛在资源管理、轻量级虚拟化、感联知控共性框架、泛在应用支撑、全栈性能优化等在内的关键技术体系,并在工业互联网等典型场景中进行应用验证。 - -- 科技部重点研发计划项目 “软件定义的泛在操作系统与环境” - -> 面向人机物融合计算与应用的挑战,针对场景计算机的新型操作系统与环境需求,研究软件定义泛在操作系统基 础理论、系统结构、定义语言和成长演化机理... - - -