https://help.steampowered.com/en/faqs/view/4784-4F2B-1321-800A
明年开始 Steam 将不再支持 Windows 7/8/8.1。
近些年用回退 DX11 或是 VKD3D 等方法玩 DX12 游戏的 Win 7 钉子户还挺多的,看来那些钉子户也是时候升级到 Win 10 了🤷♂️
明年开始 Steam 将不再支持 Windows 7/8/8.1。
近些年用回退 DX11 或是 VKD3D 等方法玩 DX12 游戏的 Win 7 钉子户还挺多的,看来那些钉子户也是时候升级到 Win 10 了🤷♂️
最近突然无法通过 SafetyNet test 了,看了下 Universal SafetyNet Fix 上的讨论,应该是谷歌又更新了验证方法。解决办法是使用以下链接里的修改版 SafetyNet Fix,经测试 Netflix 之类的也能搜到了。
当然这也不是长久之计,SafetyNet 本身就要换成 Play Integrity API 了,到时候要是强制要求 evaluationType 是 HARDWARE_BACKED 那基本就没办法了。
PS:你仍然可能需要安装 shamiko 和/或清除 Play services 数据才能通过 SafetyNet test。
修改版 SafetyNet Fix 地址:https://github.com/Displax/safetynet-fix/releases
当然这也不是长久之计,SafetyNet 本身就要换成 Play Integrity API 了,到时候要是强制要求 evaluationType 是 HARDWARE_BACKED 那基本就没办法了。
PS:你仍然可能需要安装 shamiko 和/或清除 Play services 数据才能通过 SafetyNet test。
修改版 SafetyNet Fix 地址:https://github.com/Displax/safetynet-fix/releases
之前我为了性能禁用了 Defender 并且没装杀毒软件,也就是所谓的裸奔状态。最近在电脑上收发文件的频率高了起来,而 Windows 是个什么情况大家都清楚,沙盒和虚拟机没那么方便并且性能可能是个问题,也因此又有了杀毒软件需求。
趁着这个机会我了解了下 AV-TEST 和 AV-Comparatives 的数据,结论如下:
首先是性能方面,如 图1、图2 所示,Defender 在性能上是绝对的垃圾,对 I/O 性能的影响非常大,我个人测试在编译输出大量文件的场景能让编译时间翻倍。再加上不经用户直接删除文件等弱智操作逻辑,因此强烈不推荐使用。
其次是杀毒/防护能力测试,如 图3、图4 所示,两个评测产生了巨大差异,Avira(小红伞)在 AV-TEST 里是满分评价,而在 AV-Comparatives 里直接零分全军覆没......
综合看下来 Kaspersky 和 ESET 表现相对较好,再加上网上对 ESET 的性能评价也比较高,最后我就选了 ESET。实际用下来感觉还不错,平常内存占用低(图5),也没见过狂吃 CPU 的情况,不过后续情况如何还有待观察。
PS:推荐使用 Defender Control 完全禁用 Defender,禁用后没有后台进程也不会再更新病毒库。
趁着这个机会我了解了下 AV-TEST 和 AV-Comparatives 的数据,结论如下:
首先是性能方面,如 图1、图2 所示,Defender 在性能上是绝对的垃圾,对 I/O 性能的影响非常大,我个人测试在编译输出大量文件的场景能让编译时间翻倍。再加上不经用户直接删除文件等弱智操作逻辑,因此强烈不推荐使用。
其次是杀毒/防护能力测试,如 图3、图4 所示,两个评测产生了巨大差异,Avira(小红伞)在 AV-TEST 里是满分评价,而在 AV-Comparatives 里直接零分全军覆没......
综合看下来 Kaspersky 和 ESET 表现相对较好,再加上网上对 ESET 的性能评价也比较高,最后我就选了 ESET。实际用下来感觉还不错,平常内存占用低(图5),也没见过狂吃 CPU 的情况,不过后续情况如何还有待观察。
PS:推荐使用 Defender Control 完全禁用 Defender,禁用后没有后台进程也不会再更新病毒库。
Windows 的可选更新里总是有些奇奇怪怪的驱动,不是从名称看不出来驱动类型就是版本号非常老。那么有没有办法看到这些驱动的详细信息呢?答案是有的,只是会比较麻烦。
这里以 图1 的第一个驱动为例,首先打开微软官方的 Microsoft®Update Catalog 搜索你想了解或下载的驱动,需要注意的是这个网站的搜索功能非常烂,尽量输全一点才有可能搜到你想要的内容。
搜索之后发现同名的有点多(图2),甚至系统要求也有点不一样。点开之后会发现这些驱动的公司不一样(图3),看来有一些是 OEM 提供的。既然这个是 Intel 的驱动那就看公版好了,转到 Package Details 可以看到 Supported Hardware IDs,这个就是驱动所支持的硬件的硬件 ID(图4)。
这个驱动的名称倒是挺详细的可以看出是某种 PCIe 控制器驱动,既然是 x16 那就是显卡的 PCIe 总线驱动(可以以通过 HWiNFO 确认)。那么怎么知道当前设备是否需要这个驱动呢?虽然设备管理器能查看硬件 ID 但不具备搜索功能,所以最好的方法就是搜索注册表。
Windows 自带的注册表编辑器一次只能搜索一项,因此这里使用 Registry Workshop。搜索 pci\ven_8086&dev_1901 后(图5)发现已经安装了 10.1.7.3 版本的驱动,而 Catalog 上最新的还是 10.1.1.38,很明显是降级因此不管这个可选驱动即可。
以上是可选更新的情况,如果 Windows 会自动更新有问题的驱动或是自动降级驱动,那么建议参考这个教程以屏蔽相关更新。
这里以 图1 的第一个驱动为例,首先打开微软官方的 Microsoft®Update Catalog 搜索你想了解或下载的驱动,需要注意的是这个网站的搜索功能非常烂,尽量输全一点才有可能搜到你想要的内容。
搜索之后发现同名的有点多(图2),甚至系统要求也有点不一样。点开之后会发现这些驱动的公司不一样(图3),看来有一些是 OEM 提供的。既然这个是 Intel 的驱动那就看公版好了,转到 Package Details 可以看到 Supported Hardware IDs,这个就是驱动所支持的硬件的硬件 ID(图4)。
这个驱动的名称倒是挺详细的可以看出是某种 PCIe 控制器驱动,既然是 x16 那就是显卡的 PCIe 总线驱动(可以以通过 HWiNFO 确认)。那么怎么知道当前设备是否需要这个驱动呢?虽然设备管理器能查看硬件 ID 但不具备搜索功能,所以最好的方法就是搜索注册表。
Windows 自带的注册表编辑器一次只能搜索一项,因此这里使用 Registry Workshop。搜索 pci\ven_8086&dev_1901 后(图5)发现已经安装了 10.1.7.3 版本的驱动,而 Catalog 上最新的还是 10.1.1.38,很明显是降级因此不管这个可选驱动即可。
以上是可选更新的情况,如果 Windows 会自动更新有问题的驱动或是自动降级驱动,那么建议参考这个教程以屏蔽相关更新。
以前经常看到有人说 8100 解码不行,最近则是很多人说 7+ Gen 2 解码不行。下载视频一个一个试太麻烦,那如何才能看解码参数呢?我试了 Device Info HW 发现信息不全,Codec Info 参数看起来不太对。所以最终的解决方法就是看 /vendor/etc/ 下 media_codecs 开头的文件。
三张图分别是 8100、7+ Gen 2、865 的 HEVC (H.265) 解码信息,可以看到前两者最大硬解分辨率只有 4096x2176,只要一边超过这个分辨率就会变成软解。老旗舰 865 的解码则没有阉割,最大支持 8192x8192。
下面的 performance-point 则是各分辨率对应的帧数,8100 比较菜最大只有 4K30,7+ Gen 2 能 4K60 但最大写了个 4096x2304 超过了 4096x2176 不知道是个什么情况,865 太强了就不多说了。
最后 7+ Gen 2 还有新的 low_latency 解码器,根据 AOSP 文档这应该是 MediaCodec 低延时解码。
当然这只是硬件支持的情况,实际能否硬解还要取决于软件那边的实现。另外讨论解码时最好还是以实际分辨率为主,也就是不局限于 16:9 的视频,不然按照广义的 4K 来个 4096x4096 分辨率的视频那 8100、7+ Gen 2 之流就没法硬解了。
三张图分别是 8100、7+ Gen 2、865 的 HEVC (H.265) 解码信息,可以看到前两者最大硬解分辨率只有 4096x2176,只要一边超过这个分辨率就会变成软解。老旗舰 865 的解码则没有阉割,最大支持 8192x8192。
下面的 performance-point 则是各分辨率对应的帧数,8100 比较菜最大只有 4K30,7+ Gen 2 能 4K60 但最大写了个 4096x2304 超过了 4096x2176 不知道是个什么情况,865 太强了就不多说了。
最后 7+ Gen 2 还有新的 low_latency 解码器,根据 AOSP 文档这应该是 MediaCodec 低延时解码。
当然这只是硬件支持的情况,实际能否硬解还要取决于软件那边的实现。另外讨论解码时最好还是以实际分辨率为主,也就是不局限于 16:9 的视频,不然按照广义的 4K 来个 4096x4096 分辨率的视频那 8100、7+ Gen 2 之流就没法硬解了。
最近我用 AppReadWriteCounter 时发现 Chrome 的写入量比较大,在看视频这种持续缓存的场景更是以 MB/s 为单位写入。虽然正常的 SSD 完全能应付这个写入量,但我强迫症犯了就是想让它写在 ramdisk 里。比较流行的选择是 PrimoCache,不过我内存不够大因此不太想用。那还有其他选择吗?我想到了之前的一个将 GPU 显存变成 ramdisk 的软件,研究了下,使用方法如下:
1. 安装 ImDisk,装好后就不用管了,这个只起到提供驱动的作用
2. 下载并运行 GpuRamDrive,设定好参数后添加并挂载即可
3. 右键 Chrome 的快捷方式,点击属性,在目标那一栏最后加上如下参数(记得根据实际情况修改路径)
实际效果还行,想要更好的效果可能需要 mklink /d 把整个缓存目录链接过去,不过因为我还有游戏等吃显存的需求所以就算了。
1. 安装 ImDisk,装好后就不用管了,这个只起到提供驱动的作用
2. 下载并运行 GpuRamDrive,设定好参数后添加并挂载即可
3. 右键 Chrome 的快捷方式,点击属性,在目标那一栏最后加上如下参数(记得根据实际情况修改路径)
--disk-cache-dir=R:\Temp
实际效果还行,想要更好的效果可能需要 mklink /d 把整个缓存目录链接过去,不过因为我还有游戏等吃显存的需求所以就算了。
我的电脑在关闭 GpuRamDrive 后出现了奇怪的情况,首先是使用任务计划程序无法启动 ThrottleStop,会弹出图一的提示框,但手动启动反倒没问题。其次是 Clash for Windows 无法显示任务栏图标。
图一 system32 后面那串路径是 Windows 存放临时文件的文件夹的路径,因此我就优先检查了文件夹的情况以及环境变量,但并没有看出问题。排查了半天后发现用不包含环境变量的绝对路径就行了,当时我并不清楚为什么,但今天在 v2ex 上看到了图二的内容后我就懂了......
简单来说,根据这条 commit,如果在 GpuRamDrive 里勾选了 Create TEMP Folder,那么这个软件就会自动修改环境变量并备份原本的环境变量(图三)。不过尴尬的是作者并没有考虑到注册表类型,而默认的 TEMP/TMP 包含 %USERPROFILE% 这个环境变量于是就出 bug 了。
解决方法也很简单,将 TEMP/TMP 的环境变量改成其他的再改回来,这样就能自动变更注册表类型。当然你也可以删除后新建。
此外也可以手动在注册表里操作,新建的时候选择可扩充字符串值。路径如下
默认值是
最后吐槽下,注册表居然不能直接修改类型,只能删除后新建,微软真是对 UX 不上心🤷♂️
图一 system32 后面那串路径是 Windows 存放临时文件的文件夹的路径,因此我就优先检查了文件夹的情况以及环境变量,但并没有看出问题。排查了半天后发现用不包含环境变量的绝对路径就行了,当时我并不清楚为什么,但今天在 v2ex 上看到了图二的内容后我就懂了......
简单来说,根据这条 commit,如果在 GpuRamDrive 里勾选了 Create TEMP Folder,那么这个软件就会自动修改环境变量并备份原本的环境变量(图三)。不过尴尬的是作者并没有考虑到注册表类型,而默认的 TEMP/TMP 包含 %USERPROFILE% 这个环境变量于是就出 bug 了。
解决方法也很简单,将 TEMP/TMP 的环境变量改成其他的再改回来,这样就能自动变更注册表类型。当然你也可以删除后新建。
此外也可以手动在注册表里操作,新建的时候选择可扩充字符串值。路径如下
HKEY_CURRENT_USER\Environment
默认值是
%USERPROFILE%\AppData\Local\Temp
最后吐槽下,注册表居然不能直接修改类型,只能删除后新建,微软真是对 UX 不上心🤷♂️