Update 3 files

- /_data/other_repo_list.csv
- /_data/links.csv
- /_posts/2025-12-01-linux.md
master
mayx 6 hours ago
parent e094b6d205
commit cd478c22a2

@ -14,6 +14,7 @@ Vullfin的博客,https://blog.vull.top/,https://blog.vull.top/atom.xml,Vullfin's
阿涛の小破站,https://emohe.cn/,https://emohe.cn/rss.xml,Docker技术分享
記緒漂流,https://ttio.cc/,https://ttio.cc/feed.xml,于记忆之川,泛思绪之舟。
陈陈菌博客,https://blog.glumi.cn/,https://blog.glumi.cn/rss.xml,计算机业余爱好者。
彬红茶日记,https://note.redcha.cn/,https://note.redcha.cn/rss.xml,我的个人日记!
Lanke's blog,https://blog.blueke.top/,https://blog.blueke.top/rss.xml,请为一切不真实之物骄傲,因为我们高于这个世界!
时光流·言,https://www.hansjack.com/,https://www.hansjack.com/feed/,个人博客,持续分享网站部署实战经验、精选书评解读和生活观察手记。 这里提供可复用的技术教程、深度阅读指南和真实生活洞察,与技术爱好者一起进步......
Pinpe 的云端,https://pinpe.top/,https://pinpe.top/rss.xml,一个属于自己的云朵。

1 title link feed_url description
14 阿涛の小破站 https://emohe.cn/ https://emohe.cn/rss.xml Docker技术分享
15 記緒漂流 https://ttio.cc/ https://ttio.cc/feed.xml 于记忆之川,泛思绪之舟。
16 陈陈菌博客 https://blog.glumi.cn/ https://blog.glumi.cn/rss.xml 计算机业余爱好者。
17 彬红茶日记 https://note.redcha.cn/ https://note.redcha.cn/rss.xml 我的个人日记!
18 Lanke's blog https://blog.blueke.top/ https://blog.blueke.top/rss.xml 请为一切不真实之物骄傲,因为我们高于这个世界!
19 时光流·言 https://www.hansjack.com/ https://www.hansjack.com/feed/ 个人博客,持续分享网站部署实战经验、精选书评解读和生活观察手记。 这里提供可复用的技术教程、深度阅读指南和真实生活洞察,与技术爱好者一起进步......
20 Pinpe 的云端 https://pinpe.top/ https://pinpe.top/rss.xml 一个属于自己的云朵。

@ -3,6 +3,7 @@ http://gdatura24gtdy23lxd7ht3xzx6mi7mdlkabpvuefhrjn4t5jduviw5ad.onion/Mayx/mayx
http://git.dkforestseeaaq2dqz2uflmlsybvnq2irzn4ygyvu53oazyorednviid.onion/mayx/blog
http://giteabolfdejtdzblkooalqei6jr67imiugmhtsh6ocw4hlj5a4q.b32.i2p/mayx/blog
https://gitlab.lain.la/mayx/mayx.pages.lain.la
https://forge.fedoraproject.org/mabbs/blog
https://tilde.club/~mayx/git/blog.git/
https://tvoygit.ru/Mayx/mayx
https://git.envs.net/Mayx/mayx
@ -41,7 +42,6 @@ https://git.duplanet.ovh/mayx/blog
http://69.62.77.234:8888/mayx/blog
http://112.219.147.186:7000/mayx/blog
https://git.rootfinlay.co.uk/mayx/blog
https://repo.beithing.com/mayx/blog
https://git.yi-guanjia.com/mayx/blog
https://gitea.belanjaparts.com/mayx/blog
http://185.208.225.190:3000/mayx/blog
@ -85,7 +85,6 @@ http://27.124.12.222:3000/mayx/blog
https://git.sayndone.ru/mayx/blog
https://gitea.hintsight.com/mayx/blog
https://anzsco.co.nz/mayx/blog
https://git.saintdoggie.org/mayx/blog
http://blackobelisk.xyz:3000/mayx/blog
https://git.dushes.keenetic.pro/mayx/blog
http://47.129.22.53:22345/mayx/blog
@ -168,7 +167,6 @@ http://121.40.40.177:3000/mayx/blog
http://118.31.223.224:3000/mayx/blog
http://voicebot.digitalakademie-bw.de:3000/mayx/blog
http://178.254.35.219:3000/mayx/blog
http://114.215.207.150:3000/mayx/blog
http://2.59.132.109:3001/mayx/blog
http://newslabx.csie.ntu.edu.tw:3000/mayx/blog
http://81.71.148.57:8080/mayx/blog
@ -486,7 +484,6 @@ https://irgit.irinfotech.com/mayx/blog
http://118.178.172.49:3000/mayx/blog
http://59.19.179.48:3300/mayx/blog
https://git.kooera.com/mayx/blog
https://gitea.megumin.asia/mayx/blog
https://gitea.lasallesaintdenis.com/mayx/blog
http://123.57.225.51:3000/mayx/blog
http://111.21.163.58:2321/mayx/blog
@ -502,7 +499,6 @@ http://39.106.146.44:3000/mayx/blog
http://47.100.212.83:3000/mayx/blog
https://git2.ne-it.net/mayx/blog
https://gitea.hoba.dedyn.io/mayx/blog
http://8.130.97.84:3000/mayx/blog
https://home.rubini.me:9998/mayx/blog
http://62.173.140.174:10480/mayx/blog
https://gitea.ecosystem.carrier.com/mayx/blog
@ -544,7 +540,6 @@ http://8.138.139.89:3000/mayx/blog
http://59.110.47.157:3000/mayx/blog
http://8.155.172.147:3001/mayx/blog
https://git.erfmann.dev/mayx/blog
https://testfixturehub.com/mayx/blog
https://git.paraboletancza.org/mayx/blog
http://lessonsource.tech:3000/mayx/blog
https://git.davisdre.com/mayx/blog
@ -555,7 +550,6 @@ https://git.newton-lab.com/mayx/blog
https://git.ocpp.com.tw/mayx/blog
https://sw4rm.dev/mayx/blog
https://code.rausch.tech/mayx/blog
https://www.sweetvillage.ru/mayx/blog
https://git.weavefun.com:5443/mayx/blog
https://git.zg23.ru/mayx/blog
https://git.vajdak.cz/mayx/blog
@ -591,7 +585,6 @@ https://gitea.yimoyuyan.cn/mayx/blog
https://git.yanfeng.uk/mayx/blog
https://git.apextoaster.com/mayx/blog
http://8.155.160.224:3000/mayx/blog
https://git.emoful.com/mayx/blog
https://hub.open-verse.ai/mayx/blog
http://221.203.14.217:3000/mayx/blog
https://git.sophiagwen.au/mayx/blog
@ -602,7 +595,6 @@ http://www.mikarsoft.com/mayx/blog
https://git.gasshog.fr/mayx/blog
https://git.ccmhub.se/mayx/blog
https://git.ihatemen.uk/mayx/blog
https://evo-git.twc1.net/gitea/mayx/blog
https://git.suzk.ru/mayx/blog
http://178.128.210.141:3000/mayx/blog
http://115.190.112.247:8418/mayx/blog
@ -648,7 +640,6 @@ http://123.57.130.140:3000/mayx/blog_cn
http://122.51.51.35:3000/mayx/blog_cn
http://112.124.49.128:3000/mayx/blog_cn
http://182.92.251.55:3000/mayx/blog_cn
http://183.221.101.89:3000/mayx/blog_cn
http://106.52.21.251:3000/mayx/blog_cn
http://118.24.46.223:3000/mayx/blog_cn
http://s3.v100.vip:31057/mayx/blog_cn
@ -683,7 +674,6 @@ http://27.185.43.173:9001/mayx/blog_cn
https://gitlab.liruwei.cn/mayx/blog_cn
http://61.190.74.90:9900/mayx/blog_cn
http://49.234.27.222:3000/mayx/blog_cn
https://gitea.viviman.top/mayx/blog_cn
http://8.153.70.81:30001/mayx/blog_cn
https://git.avclick.ru/mayx/blog_cn
http://175.27.229.211:3000/mayx/blog_cn
@ -696,7 +686,6 @@ http://122.51.36.119:3000/mayx/blog_cn
http://43.143.142.38:7001/mayx/blog_cn
http://macrocc.com:3000/mayx/blog_cn
http://39.105.67.143:3000/mayx/blog_cn
https://git.ciy.cn/mayx/blog_cn
https://git.hi6k.com/mayx/blog_cn
http://101.42.158.231:3000/mayx/blog_cn
http://8.140.232.131:8100/mayx/blog_cn
@ -706,12 +695,10 @@ http://211.149.155.157:3000/mayx/blog_cn
http://82.156.89.21:3000/mayx/blog_cn
http://62.234.194.66:3000/mayx/blog_cn
http://47.109.71.130:3000/mayx/blog_cn
https://git.zhisensh.com/mayx/blog_cn
http://49.234.193.192:3000/mayx/blog_cn
http://62.234.222.247:3000/mayx/blog_cn
https://git.sskuaixiu.com/mayx/blog_cn
http://xujiesoft.vicp.net:3000/mayx/blog_cn
http://47.102.36.9:3000/mayx/blog_cn
http://113.44.36.103:23000/mayx/blog_cn
http://111.229.35.227:3000/mayx/blog_cn
http://wchao.space:8009/mayx/blog_cn
@ -733,3 +720,5 @@ http://115.190.205.98:3000/mayx/blog_cn
http://47.113.149.107:10110/mayx/blog_cn
http://112.124.14.60:3000/mayx/blog_cn
http://183.236.243.71:3693/mayx/blog_cn
http://47.92.113.131:3000/mayx/blog
http://gyc.myds.me:4000/mayx/blog

1 repo_url
3 http://git.dkforestseeaaq2dqz2uflmlsybvnq2irzn4ygyvu53oazyorednviid.onion/mayx/blog
4 http://giteabolfdejtdzblkooalqei6jr67imiugmhtsh6ocw4hlj5a4q.b32.i2p/mayx/blog
5 https://gitlab.lain.la/mayx/mayx.pages.lain.la
6 https://forge.fedoraproject.org/mabbs/blog
7 https://tilde.club/~mayx/git/blog.git/
8 https://tvoygit.ru/Mayx/mayx
9 https://git.envs.net/Mayx/mayx
42 http://69.62.77.234:8888/mayx/blog
43 http://112.219.147.186:7000/mayx/blog
44 https://git.rootfinlay.co.uk/mayx/blog
https://repo.beithing.com/mayx/blog
45 https://git.yi-guanjia.com/mayx/blog
46 https://gitea.belanjaparts.com/mayx/blog
47 http://185.208.225.190:3000/mayx/blog
85 https://git.sayndone.ru/mayx/blog
86 https://gitea.hintsight.com/mayx/blog
87 https://anzsco.co.nz/mayx/blog
https://git.saintdoggie.org/mayx/blog
88 http://blackobelisk.xyz:3000/mayx/blog
89 https://git.dushes.keenetic.pro/mayx/blog
90 http://47.129.22.53:22345/mayx/blog
167 http://118.31.223.224:3000/mayx/blog
168 http://voicebot.digitalakademie-bw.de:3000/mayx/blog
169 http://178.254.35.219:3000/mayx/blog
http://114.215.207.150:3000/mayx/blog
170 http://2.59.132.109:3001/mayx/blog
171 http://newslabx.csie.ntu.edu.tw:3000/mayx/blog
172 http://81.71.148.57:8080/mayx/blog
484 http://118.178.172.49:3000/mayx/blog
485 http://59.19.179.48:3300/mayx/blog
486 https://git.kooera.com/mayx/blog
https://gitea.megumin.asia/mayx/blog
487 https://gitea.lasallesaintdenis.com/mayx/blog
488 http://123.57.225.51:3000/mayx/blog
489 http://111.21.163.58:2321/mayx/blog
499 http://47.100.212.83:3000/mayx/blog
500 https://git2.ne-it.net/mayx/blog
501 https://gitea.hoba.dedyn.io/mayx/blog
http://8.130.97.84:3000/mayx/blog
502 https://home.rubini.me:9998/mayx/blog
503 http://62.173.140.174:10480/mayx/blog
504 https://gitea.ecosystem.carrier.com/mayx/blog
540 http://59.110.47.157:3000/mayx/blog
541 http://8.155.172.147:3001/mayx/blog
542 https://git.erfmann.dev/mayx/blog
https://testfixturehub.com/mayx/blog
543 https://git.paraboletancza.org/mayx/blog
544 http://lessonsource.tech:3000/mayx/blog
545 https://git.davisdre.com/mayx/blog
550 https://git.ocpp.com.tw/mayx/blog
551 https://sw4rm.dev/mayx/blog
552 https://code.rausch.tech/mayx/blog
https://www.sweetvillage.ru/mayx/blog
553 https://git.weavefun.com:5443/mayx/blog
554 https://git.zg23.ru/mayx/blog
555 https://git.vajdak.cz/mayx/blog
585 https://git.yanfeng.uk/mayx/blog
586 https://git.apextoaster.com/mayx/blog
587 http://8.155.160.224:3000/mayx/blog
https://git.emoful.com/mayx/blog
588 https://hub.open-verse.ai/mayx/blog
589 http://221.203.14.217:3000/mayx/blog
590 https://git.sophiagwen.au/mayx/blog
595 https://git.gasshog.fr/mayx/blog
596 https://git.ccmhub.se/mayx/blog
597 https://git.ihatemen.uk/mayx/blog
https://evo-git.twc1.net/gitea/mayx/blog
598 https://git.suzk.ru/mayx/blog
599 http://178.128.210.141:3000/mayx/blog
600 http://115.190.112.247:8418/mayx/blog
640 http://122.51.51.35:3000/mayx/blog_cn
641 http://112.124.49.128:3000/mayx/blog_cn
642 http://182.92.251.55:3000/mayx/blog_cn
http://183.221.101.89:3000/mayx/blog_cn
643 http://106.52.21.251:3000/mayx/blog_cn
644 http://118.24.46.223:3000/mayx/blog_cn
645 http://s3.v100.vip:31057/mayx/blog_cn
674 https://gitlab.liruwei.cn/mayx/blog_cn
675 http://61.190.74.90:9900/mayx/blog_cn
676 http://49.234.27.222:3000/mayx/blog_cn
https://gitea.viviman.top/mayx/blog_cn
677 http://8.153.70.81:30001/mayx/blog_cn
678 https://git.avclick.ru/mayx/blog_cn
679 http://175.27.229.211:3000/mayx/blog_cn
686 http://43.143.142.38:7001/mayx/blog_cn
687 http://macrocc.com:3000/mayx/blog_cn
688 http://39.105.67.143:3000/mayx/blog_cn
https://git.ciy.cn/mayx/blog_cn
689 https://git.hi6k.com/mayx/blog_cn
690 http://101.42.158.231:3000/mayx/blog_cn
691 http://8.140.232.131:8100/mayx/blog_cn
695 http://82.156.89.21:3000/mayx/blog_cn
696 http://62.234.194.66:3000/mayx/blog_cn
697 http://47.109.71.130:3000/mayx/blog_cn
https://git.zhisensh.com/mayx/blog_cn
698 http://49.234.193.192:3000/mayx/blog_cn
699 http://62.234.222.247:3000/mayx/blog_cn
700 https://git.sskuaixiu.com/mayx/blog_cn
701 http://xujiesoft.vicp.net:3000/mayx/blog_cn
http://47.102.36.9:3000/mayx/blog_cn
702 http://113.44.36.103:23000/mayx/blog_cn
703 http://111.229.35.227:3000/mayx/blog_cn
704 http://wchao.space:8009/mayx/blog_cn
720 http://47.113.149.107:10110/mayx/blog_cn
721 http://112.124.14.60:3000/mayx/blog_cn
722 http://183.236.243.71:3693/mayx/blog_cn
723 http://47.92.113.131:3000/mayx/blog
724 http://gyc.myds.me:4000/mayx/blog

@ -12,7 +12,7 @@ tags: [浏览器, Linux, 虚拟机, WASM]
# 在浏览器中运行Linux
## 虚拟机方案
### 纯JS虚拟机
要说到在浏览器上运行Linux最先想到的应该就是[Fabrice Bellard](https://bellard.org)大神写的[JSLinux](https://bellard.org/jslinux/)吧这可能是第一个在浏览器中实现的虚拟机毕竟是最强虚拟机QEMU的作者编写的。现在他的个人主页中展示的这个版本是WASM版本而他最早写的是纯JS实现的。那个JS实现的版本现在在GitHub上有一个[去混淆的版本](https://github.com/levskaya/jslinux-deobfuscated)可以用作学习和研究于是我顺手Fork了一份在GitHub Pages上部署作为[演示](http://mabbs.github.io/jslinux/)。
要说到在浏览器上运行Linux最先想到的应该就是[Fabrice Bellard](https://bellard.org)大神写的[JSLinux](https://bellard.org/jslinux/)吧这可能是第一个在浏览器中实现的虚拟机毕竟是最强虚拟机QEMU的作者编写的。现在他的个人主页中展示的这个版本是WASM版本而他最早写的是纯JS实现的。那个JS实现的版本现在在GitHub上有一个[去混淆的版本](https://github.com/levskaya/jslinux-deobfuscated)可以用作学习和研究于是我顺手Fork了一份在GitHub Pages上部署作为[演示](https://mabbs.github.io/jslinux/)。
作为纯JS实现的x86虚拟机性能估计是最差的但相应的兼容性也最好在Bellard当年写JSLinux的时候还没有WASM这种东西呢所以即使是在不支持WASM的IE11中也可以正常运行。假如我想把它作为终端用在我的博客上似乎也是个不错的选择即使我完全看不懂代码不知道如何实现JS和虚拟机的通信它也预留了一个剪贴板设备可以让我轻松地做到类似的事情比如我在里面写个Bash脚本通过它和外面的JS脚本联动来读取我的文章列表和内容那也挺不错。
当然Bellard用纯JS编写虚拟机也不是独一份他实现了x86的虚拟机相应的也有人用纯JS实现了RISC-V的虚拟机比如[ANGEL](https://github.com/riscv-software-src/riscv-angel),看起来挺不错,所以同样也顺手[搭了一份](https://mabbs.github.io/riscv-angel/)。只不过它似乎用了一些更先进的语法至少IE11上不能运行。
另外还有一个比较知名的项目,叫做[jor1k](https://github.com/s-macke/jor1k)它模拟的是OpenRISC架构。只是这个架构目前已经过时基本上没什么人用了不过这里面还内置了几个演示的小游戏看起来还挺有意思。

Loading…
Cancel
Save