V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  RickRobust  ›  全部回复第 1 页 / 共 2 页
回复总数  36
1  2  
281 天前
回复了 tsohgdivil 创建的主题 Apple 为什么 iOS 不支持虚拟内存?
@neiltroyer849 谢谢
我再补充一下,不管是 apple 怎么称呼扩展内存的技术(毕竟 apple 在 m 系列的 ipad 才在正式引入“swap”这个词),在内核层面所有的 ios 设备都跟 macos 一样存在 swap 这个东西的,对应 vm swap subsystem ,可以直接去看源码。


从中可以清晰看到 ios 最多创建 5 个 swapfile ,每个 128MB ,也就是最高 640MB ;而 macos 可以创建 100 个,也就是 12800MB 。考虑到 apple 声称自己的内存压缩技术可以达到两倍的效率,上面的数字可以乘 2 。从代码看虽然二者的 vm swap subsystem 实现逻辑存在一定的差异,我毫不怀疑 ios 同样可以实现 macos 所谓 8g 当 16g 使用的体验的,但实际上 apple 只是把它当成了一个 backup ( 640M 实在是太小了),功耗可能是一个考量,更重要的我觉得还是刀法,毕竟安卓已经用了好几年了(至少五年或更早前就存在了,只是当时还没有被厂商作为宣传噱头),也很少有 report 讲 swap 开启前后功耗开销问题,这个东西如果做大对 apple 来说就是改个宏的事儿,大不了做个开关也行,但事实上他们没有。


至于 m 系列 ipad 引入的所谓 swap ,我没有深入了解,看起来是为了管理应用对大内存的需求而独立设计的另一套系统,有专门的 api ,比如所有应用内存管理本身还是受 jetsam 监督,而走这个 api 就可以 bypass 掉,以及专用 api 可以实现更灵活的内存管理,带来更好的能效收益。


总之,内核的 swap 和 apple 最近 claim 的 swap 我觉得还是两码事儿,前者强调的是应用内存数据的留存,可以理解为后台挂更多的应用,但每个应用能管理的内存还是有限的;后者强调单个 app 可以管理更多内存,比如剪辑视频,在管理过程中当然同样允许换出到外存。


手里有一台 2 代 ipad pro 12.9 ,强开了台前调度体验还是很不错,美中不足的就是后台的问题,过年回家无事我打算研究一下怎么基于 checkra1n 修改 xnu 破掉这个限制,比如在 kernel 启动前覆盖 https://github.com/apple/darwin-xnu/blob/main/osfmk/vm/vm_compressor_backing_store.c#L138 这个宏对应的值;或者启动后找机会覆盖 vm_num_swap_files_config 这个值。。


个人见解,欢迎大佬纠错补充。
282 天前
回复了 tsohgdivil 创建的主题 Apple 为什么 iOS 不支持虚拟内存?
其实是有的,最大是 640MB ,路径在/var/vm/swapfile[0-4],具体见 https://github.com/apple/darwin-xnu/blob/main/osfmk/vm/vm_compressor_backing_store.c#L138
他是写死在 kernel 的,可能内核级越狱也许可以改,所以就是几乎不可能(除非还在用 a11 之前的设备)。
支持一下
331 天前
回复了 RickRobust 创建的主题 Apple IOS 越狱打开 swap 的可能性
@noahhhh 这倒是
@jim9606 oom 的 m 一般也都是 dram+swap 吧,比如原来 3g ram ,加上 2g swap ,他 oom 的标准也会相应变成 5g ,也就是一次可以申请超过 3g 的内存。另外关于 ssd 的问题,现在 ssd 寿命基本都是上百的 TBW ,这个寿命在相对移动场景更恶劣的 pc 上(大量文件交互、swap )也是相当够覆盖设备的寿命周期( 3~5 年),而在移动设备场景下数据交互肯定是更少的,那相比于移动设备本身的寿命风险(意外损坏、电池老化、甚至屏幕寿命),肯定不是瓶颈。
331 天前
回复了 RickRobust 创建的主题 Apple IOS 越狱打开 swap 的可能性
@noahhhh 我简单看了一下 xnu 的代码,确实有 swap 相关的实现,只能说也是刀法的一部分了,就是不知道 ios 的内核是原本就有 swap 功能还是通过某些编译选项关掉了,感觉讨论的很少。

@pendulum 是的,另外还有电池,假如可以破解循环次数写入,这样不限次数换电芯,这两个解决换机瓶颈就没有了。
@yyysuo
@IITII
@Jacksu 了解了,谢谢
PE ,用了 AOSP Mods ,去手势操作小白条+状态栏网速显示+隐藏图标(如 VOLTE )。
356 天前
回复了 RickRobust 创建的主题 Apple 第三方 MagSafe 究竟支持优化充电吗?
@YsHaNg 我现在是白天在工位放上去到 80 就拿下来,训练他白天不充满,晚上拿回去有线充满这样,有一阵了,还是不行。。
357 天前
回复了 RickRobust 创建的主题 Apple 第三方 MagSafe 究竟支持优化充电吗?
仔细看了一下,se2 是冲到 80 显示温度异常。。。在充电器放了一个小时又开始充电了。。因为 se2 带了个磁吸的硅胶壳,这么说之前可能都是这个原因。。

@jiaslbang @Lullaby001 我也仔细看了官方的说明,确实没看到一定 MFM ,但是我搞回来一个多月,放在工位很规律,但 13mini 从来没成功触发,也按照官方的要求隐私选项里面的都打开了,感觉很玄学。。
必须支持一下!
2023-10-16 16:40:00 +08:00
回复了 RickRobust 创建的主题 问与答 bitwarden 的安卓客户端可以正常使用吗
@Liniretus 按照之前讨论的(见 APPEND ),再也没有卡死无响应的情况了,无障碍也很丝滑。除了 L40 说的微信支付输完密码问要不要保存这个提示搞不掉有点烦,基本没槽点。
你说这个 app 我也去试试。
如果是 L19 提到的密码自动填充的问题,需要把密码填充 app 设置后台无限制、给自启动权限,详见 https://v2ex.com/t/978764
2023-10-09 09:41:10 +08:00
回复了 RickRobust 创建的主题 问与答 bitwarden 的安卓客户端可以正常使用吗
@zhuzhuaini 印象里 miui 好像会的,我现在刷了 xperience 之后再没有了,非常流畅。可能也跟后台有关?我的 gboard 看起来都是后台一直运行的,你看看输入法省电设置、后台权限这些。
2023-10-07 19:50:44 +08:00
回复了 RickRobust 创建的主题 问与答 bitwarden 的安卓客户端可以正常使用吗
@zhuzhuaini 怎么样老哥,有效果吗
2023-10-06 10:59:48 +08:00
回复了 RickRobust 创建的主题 问与答 bitwarden 的安卓客户端可以正常使用吗
@zhuzhuaini 经过测试,有一种情况是如果 bitwarden 客户端不做后台保活或自启动,会出现前台应用卡顿的情况。比如后台结束 bitwarden 进程,chrome 上登录 paypal ,切到微信前台会导致微信卡顿。目前不清楚 miui 出现的问题是不是这个原因,你可以试一下。
2023-10-05 01:16:22 +08:00
回复了 RickRobust 创建的主题 问与答 bitwarden 的安卓客户端可以正常使用吗
@WebKit 是的,按照之前讨论总结下来就是
1. bitwarden 后台保活+自启动,这里我用的 thanox 规则
2. 自动填充这些开关在 app 操作不在系统设置
这样我用了大半天似乎还没遇到问题。
2023-10-04 19:48:22 +08:00
回复了 RickRobust 创建的主题 问与答 bitwarden 的安卓客户端可以正常使用吗
@MXMIS 我用的树莓派+cf tunnel 走自己的域名,为了防止自己的存储介质不可靠,套了 onedrive 做后端数据库文件做备份。
@kokutou 发现一个比较奇怪的情况是如果在设置里把自动填充改 bw 在我这里不会同步到 bitwarden app 的设置中,不知道是不是这个原因,这次在 app 里操作的,而且把四个选项都打开了,暂时还没出现问题。
@hefish 是的,这个情况确实有点烦。。
2023-10-04 15:47:22 +08:00
回复了 RickRobust 创建的主题 问与答 bitwarden 的安卓客户端可以正常使用吗
@kokutou 我之前是小米 13pro ,现在是 k60 。模块这个我试一下关掉看看,谢谢。
1  2  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1012 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 78ms · UTC 21:30 · PVG 05:30 · LAX 13:30 · JFK 16:30
Developed with CodeLauncher
♥ Do have faith in what you're doing.