Update 2 files

- /js/main.js
- /_posts/2024-04-06-old-pc.md
This commit is contained in:
mayx 2024-04-08 12:52:09 +00:00
parent 10a3521795
commit f1e7070380
2 changed files with 8 additions and 6 deletions

View File

@ -11,7 +11,7 @@ tags: [旧电脑, Darling, whisper, Anbox]
# 测试平台介绍
本次测试的4台电脑为了方便操作我都装了Linux发行版Windows的话想要登录还要远程桌面太麻烦了以下是这些电脑的配置
1. 装有 [Intel® Pentium® E5300](https://www.intel.cn/content/www/cn/zh/products/sku/35300/intel-pentium-processor-e5300-2m-cache-2-60-ghz-800-mhz-fsb/specifications.html) CPU的电脑
一、装有 [Intel® Pentium® E5300](https://www.intel.cn/content/www/cn/zh/products/sku/35300/intel-pentium-processor-e5300-2m-cache-2-60-ghz-800-mhz-fsb/specifications.html) CPU的电脑
```
.. root@localhost.localdomain
@ -34,7 +34,7 @@ tags: [旧电脑, Darling, whisper, Anbox]
'MKKM'
''
```
2. 装有 [AMD Athlon™ II X4 641](https://www.amd.com/zh-hans/product/1326) CPU 和 NVIDIA GeForce GT 440 的电脑
二、装有 [AMD Athlon™ II X4 641](https://www.amd.com/zh-hans/product/1326) CPU 和 NVIDIA GeForce GT 440 的电脑
```
.-/+oossssoo+/-. mayx@mayx-server
@ -58,7 +58,7 @@ ossyNMMMNyMMhsssssssssssssshmmmhssssssso Memory: 242MiB / 7925MiB
`:+ssssssssssssssssss+:`
.-/+oossssoo+/-.
```
3. 装有 [Intel® Pentium® G3240](https://www.intel.cn/content/www/cn/zh/products/sku/80796/intel-pentium-processor-g3240-3m-cache-3-10-ghz/specifications.html) CPU的电脑
三、装有 [Intel® Pentium® G3240](https://www.intel.cn/content/www/cn/zh/products/sku/80796/intel-pentium-processor-g3240-3m-cache-3-10-ghz/specifications.html) CPU的电脑
```
.-/+oossssoo+/-. mayx@mayx-server
@ -82,7 +82,7 @@ ossyNMMMNyMMhsssssssssssssshmmmhssssssso GPU: Intel HD Graphics
`:+ssssssssssssssssss+:`
.-/+oossssoo+/-.
```
4. 装有 [Intel® Xeon® E5-2620](https://www.intel.cn/content/www/cn/zh/products/sku/64594/intel-xeon-processor-e52620-15m-cache-2-00-ghz-7-20-gts-intel-qpi/specifications.html) CPU的电脑
四、装有 [Intel® Xeon® E5-2620](https://www.intel.cn/content/www/cn/zh/products/sku/64594/intel-xeon-processor-e52620-15m-cache-2-00-ghz-7-20-gts-intel-qpi/specifications.html) CPU的电脑
```
.-/+oossssoo+/-. mayx@mayxserver
@ -114,7 +114,9 @@ ossyNMMMNyMMhsssssssssssssshmmmhssssssso Memory: 8773MiB / 11928MiB
那么对于这些机器来说干点什么好呢当然除了GPIO之类的树莓派能干的他们也能干所以要干就干一些特别的东西。我想了一下我平时用的电脑是macOS系统虽然给那些旧电脑装黑苹果可能不太现实但是我之前发现了一个叫[Darling](https://github.com/darlinghq/darling)的项目类似Wine那样在Linux上运行Windows程序这个项目可以在Linux上运行macOS的程序。看起来挺有意思的所以我打算在第一台机器上试着安装一下。
不过我按照官方文档上安装对于CentOS Stream 8来说有好多包不知道为什么似乎都没有比如libavformat-free-devel之类的我只好从网上找其他RedHat系列类似的包或者找替代品FFmpeg另外Darling需要Linux 5.0或者更高的内核CentOS的内核版本太低了所以我升到了主线版本的Linux也就是6.8的版本……最终花了一天的时间终于编译好了然而悲剧的是运行的时候报了非法指令“Illegal instruction (core dumped)”的错误。一般来说这个错误是新机器上编译的程序在旧机器运行才会报的错,可我是在同一台机器上编译的为什么会报这种错误呢?可能是因为代码里包含汇编语言的代码吧。我发了个[Issue](https://github.com/darlinghq/darling/issues/1497)问了一下作者,不过看起来他也不知道是什么问题……
对于这种问题我感觉也没什么好办法……可能这台机器真的就没办法了在第二台速龙641的电脑上试了一下也不行……不过后来我在第三台装有奔腾G3240的电脑上试着编译安装了一下结果可以运行。看来确实是奔腾E5300的问题。不过它俩到底差在哪里呢看介绍会发现奔腾G3240里包含了Intel® SSE4.1和Intel® SSE4.2的指令集扩展。那么对于没有这个指令集扩展的CPU就没办法了吗Intel官方给了一个解决方法是[Intel® SDE](https://www.intel.com/content/www/us/en/developer/articles/tool/software-development-emulator.html)可以在旧机器上模拟运行使用了最新指令集的程序甚至包括AVX512都可以模拟的出来但是我用这个东西运行Darling的时候还是报错了可能Darling需要用到内核的一些特性但是SDE不能模拟……这都没办法是不是就彻底没办法了呢
在偶然的一次浏览中,我发现了一个神奇的东西,内核扩展[OPEMU](https://github.com/mirh/opemu-linux)它可以让不支持一些指令集扩展的CPU通过模拟的方式支持其实功能和SDE很像只是它是在内核中运行的我试着在第一台机器上编译安装了一下顺便一说如果是旧的5.x或者更早的Linux可以直接用这个仓库而更新的Linux比如6.x的需要用[PR](https://github.com/Spacefish/opemu-linux)中的这个仓库结果Darling真的可以运行了真是令人难以置信。不过测试了一下可能还是有些地方有BUG比如用Git的时候会报错可能是和README中所说的CRC32表现有问题吧不过Darling好像可以直接运行Linux中的命令那我在用Git的时候调用Linux下的Git是不是也可以呢试了一下不太行因为执行Linux程序的时候不能用Darling中的目录结构不过我想装omz只需要/Users目录就够了我直接创建一个软链接把Darling的/Users目录映射到Linux的根目录就可以了吧试了一下还行可以正常运行虽然Homebrew不能安装有点可惜……不过Neofetch可以安装😆效果如下
在偶然的一次浏览中,我发现了一个神奇的东西,内核扩展[OPEMU](https://github.com/mirh/opemu-linux)它可以让不支持一些指令集扩展的CPU通过模拟的方式支持其实功能和SDE很像只是它是在内核中运行的我试着在第一台机器上编译安装了一下顺便一说如果是旧的5.x或者更早的Linux可以直接用这个仓库而更新的Linux比如6.x的需要用[PR](https://github.com/Spacefish/opemu-linux)中的这个仓库结果Darling真的可以运行了真是令人难以置信。
安装成功之后我在网上找了个C语言的程序[endoh1](http://www.ioccc.org/2012/endoh1/hint.html)这个程序可以用文本模拟流体。我在我的MacBook上编译了试了一下运行没有问题当然直接编译的程序是ARM64的程序肯定不能在Darling里面运行于是我切换到x86_64模式下又编译了一次并且用`lipo`命令把两个程序合并到了一起然后把程序上传到第一台机器中使用Darling运行竟然可以正常运行看来那个内核扩展还不错啊Darling居然没有出问题。
不过测试了一下可能还是有些地方有BUG比如用Git的时候会报错可能是和README中所说的CRC32表现有问题吧不过Darling好像可以直接运行Linux中的命令那我在用Git的时候调用Linux下的Git是不是也可以呢试了一下不太行因为执行Linux程序的时候不能用Darling中的目录结构不过我想装omz只需要/Users目录就够了我直接创建一个软链接把Darling的/Users目录映射到Linux的根目录就可以了吧试了一下还行可以正常运行虽然Homebrew不能安装有点可惜……不过Neofetch可以安装😆效果如下
```
'c. root@localhost.localdomain
,xNMM. --------------------------

View File

@ -9,7 +9,7 @@
$(window).bind("scroll", $backToTopFun);
$(function() { $backToTopFun(); });
})();
var auxiliaryHost = "https://counter.mayx.eu.org";
var auxiliaryHost = "https://mayx.count.linkpc.net";
$(function(){
$("div#landlord").mouseenter(function(){
$("div.live_ico_box").fadeIn();