V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ecnelises  ›  全部回复第 1 页 / 共 11 页
回复总数  217
1  2  3  4  5  6  7  8  9  10 ... 11  
Unix 有一个通用的工具叫 chroot ,顾名思义就是在某个环境中把某个目录映射为 root ,理论上可以实现虚拟环境的功能。但 macOS 上这么折腾的毕竟少,要实现你的目的可能坑多。
我记得非常清楚,几年前在本站看到过一个 NVIDIA 员工发的帖子(一时找不到了),说他大约是在 11 年还是 13 年入职的,到现在财务自由就是靠公司股票。那时候还没有 ChatGPT 、没有生成式 AI. 如果在十年前那个阶段买入 NVIDIA 股票,到 20 年美国大放水之前差不多也有十倍收益,和今天这个涨幅自然不能比,但放在正常股票来看也了不得。

人是不能回到过去的,这种事即使放到梦里也显得有些奢侈,因为现今人类构筑的绝大多数体系,都建立在「时间是单向流动的」这个假设上。也就是说,如果自己真能回到过去,那今天 NVIDIA 的股票也不会值这么多钱。

如果你过去有本金但未做出你今天看来正确的决定,应该想的不是「如果我当时能 xxx 就好了」(虽然是人之常情),而是为什么自己当时没做出这个选择,一定有它的原因,一定是在当时看来这么做不会有这么大收益。这个才重要得多。人总是乐于美化过去而丑化未来。
17 天前
回复了 nnegier 创建的主题 C 还是不太理解 C 静态库和动态库?
@nnegier
可以用命令打出系统/Applications 目录下的应用程序的可执行文件依赖的动态库,比如 Firefox 就是 otool -L /Applications/Firefox.app/Contents/MacOS/firefox ,你会发现大部分软件都依赖了一大堆动态库,都是同样的系统路径
18 天前
回复了 nnegier 创建的主题 C 还是不太理解 C 静态库和动态库?
@draymonder
动态库在内存中的地址是不确定的,加载的时候才会分配地址空间,甚至对每个符号来说,它们的地址要到第一次被调用时才确定(延迟绑定),只是操作系统有虚拟内存机制,所以不同进程地址空间里的动态库地址实际上指向的是同一份。
18 天前
回复了 haoyu7 创建的主题 软件 全平台密码管理器咨询
@jimmy3780
好想法。不过我刚开始对它那个 Passkey 支持很摸不着头脑,以为是可以用 Passkey 解锁,没想到是保存 Passkey 登录其他网站,鉴于支持 Passkey 的网站基本都支持传统密码登录,感觉有点意义不明😂
18 天前
回复了 nnegier 创建的主题 C 还是不太理解 C 静态库和动态库?
粗略地讲,一个「程序」主要由两个部分构成:供 CPU 执行的代码区域和供代码读写的数据区域。对应地,每个.c .cpp 文件编译后的.o (Windows 上是.obj) 文件也有自己的代码区域和数据区域,最后由 ld (Windows 上是 link.exe) 把所有的代码区域合并为一个,数据区域也合并为一个,然后调整好里面引用的位置偏差。

大多数情况下,每个程序的数据区域都可以由这个程序任意读写,但代码区域是只读的。程序运行的时候,代码区域和数据区域都会被加载到内存中。顺着这个思路,假如系统里有很多个程序链接了一样的库,那每个链接了这个库的程序只需要复制一份库的数据区域以读写就行了,代码区域反正是只读的,内存里只用存一份,大家执行代码时都指向这个区域就行。因此,使用动态库可以减少内存占用,就是指这种情况下节省了多余的代码区域。

另外,很多程序会直接链接系统某个路径的动态库,运行的时候不同程序直接读取系统路径的就可以,而用静态库的话,每个程序都会把这个库被引用到的所有内容都打包进可执行文件里。所以动态库也可以减少磁盘空间占用。
18 天前
回复了 haoyu7 创建的主题 软件 全平台密码管理器咨询
@0o0O0o0O0o
大概就是每个系统自己的加解密 API ,比如 macOS/iOS 的 CryptoKit/CommonCrypto ,Windows 的 bcrypt. 好处是程序体积更小,配置简单,不过反正 Linux 平台上用的都是 OpenSSL/LibreSSL ,其他平台打包上一个这个也不是什么大问题。
18 天前
回复了 haoyu7 创建的主题 软件 全平台密码管理器咨询
打算写一个,现在想到的点:

- 兼容主流平台,最好用原生 UI (老版本系统可以战略性放弃)和原生加密 API
- 有浏览器插件(联动原生软件还是独立运行?)
- 有命令行程序提供一些底层命令供自动化
- 数据结构灵活,字段可定制
- 开源,有完备测试,加密流程部分参考几大密码管理器的技术白皮书
- 支持同步( iCloud ?文件?如果可以也可以兼容 Bitwarden 协议?或者自建 API )
- 能从其他密码管理器导出的数据导入,以及反过来导出到它们能接受的格式
245 天前
回复了 iqoo 创建的主题 程序员 使用 LLVM 的 clang 替换苹果自带的有问题吗
1. LLVM 在构建的时候可以选择启用哪些 target ,macOS 的 AppleClang 可能只 enable 了 AArch64 和 X86 ,你自己 build 的 Clang 如果不传 LLVM_TARGETS_TO_BUILD 这个 CMake 选项那就是全部启用,也包括 WebAssembly

2. 苹果的 AppleClang 应该是对 include 和 library path 有一些魔改,你试着编译一个没有#include 的 C 文件然后-v 看就能发现。

AppleClang 是这样(以 Xcode Beta 为例):
/usr/local/include
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/15.0.0/include
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks (framework directory)

社区源码编译的 Clang 是这样:
/usr/local/include
~/Developer/llvm/build/lib/clang/17/include
/System/Library/Frameworks (framework directory)
/Library/Frameworks (framework directory)

最简单的解决方法自然是把 Xcode 里那堆目录软链接到/usr/local/include 里。

继续尝试编译,发现提示-lSystem 找不到,跟着上面 Xcode Clang 的输出,加上-Wl,-syslibroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk 就可以。

嫌麻烦也可以把这个额外选项写到 Clang 的 config file 里:

https://clang.llvm.org/docs/UsersManual.html#configuration-files
256 天前
回复了 yushi17 创建的主题 Apple Mac 脑瘫设计吐槽(100%主观)
@cosette
其实按 Option 点全屏按钮也不一定就是最大化,比如 Finder 和 Safari 就不行,是有个 API 可以让开发者返回软件当前认为最合适的尺寸,如果没有实现这个 API 就是最大化
266 天前
回复了 thinkm 创建的主题 程序员 为啥我很少回去翻我的笔记?
残酷的事实是:有些笔记存在的价值就不是为了日后往回翻的,它们存在的惟一价值就是在你记下它们的那一刻,打消你「我如果忘记了这个怎么办?」的焦虑。
贴一个以前对 Mac 玩游戏这件事的几点看法:

1. 现在的 Mac 不是一个合适的游戏平台;

2. 客观上,苹果没有真的让 Mac 更加适合游戏的意愿,Apple Arcade 的目的是推进强化版的 App Store 生态;

3. 买来一台电脑想玩游戏,或者想让自己的电脑可以玩游戏,是非常合理的诉求;

4. 认为一台电脑不适合玩游戏,所以就是垃圾的人,不仅魔怔,还不适合交朋友;

5. M 系列芯片的表现和持续增长的 Mac 用户数是 Mac 成为游戏平台的动力,但还需要苹果顺水推舟,至少不从中作梗。
356 天前
回复了 wuwukai007 创建的主题 程序员 有没有觉得 mac 访达(finder)特别难用的
Finder 但凡把它那些只能用快捷键完成的功能全都做到菜单里,吐槽 Finder 难用的人也不会有这么多
2023-02-19 17:06:47 +08:00
回复了 soclearn 创建的主题 编程 是不是几乎现在中国的程序员,都是搞 web 的?
我自己就不是做 Web 的,我的同事、以及很多更远的同事也不是做 Web 的,我的很多朋友也不是做 Web 的。算反例了么?
2023-02-04 00:30:53 +08:00
回复了 numberator 创建的主题 问与答 对于摆脱精神内耗最有效的动作是什么?
也许减轻内耗的办法就是真的不去想它: https://www.bilibili.com/video/BV168411P7KQ

从这个视频的观点来看,反复去想让你焦虑的事情,反而会在你的大脑里形成类似「走的人多了形成的路」,带给你更深的焦虑
2023-02-04 00:27:03 +08:00
回复了 cc123 创建的主题 nostr 这里好像没有什么 nostr 的消息
粗略看了一下,像是一个用公钥取代 ID 的 Mastodon ?以前有过这种 Idea ,没想到真有人做了。类似想法的聊天软件也有,叫 Session. 但很多人注册它,大概并非因为非对称加密如何迷人,只是跟曾经的 Clubhouse 一样感到新奇而已。
2023-02-04 00:21:45 +08:00
回复了 takato 创建的主题 Rust 我们该如何正确实现一个 i64 和 f64 数值的比较
试试在 Rust 或者 JS 里看看 905325263262362321.0 < 905325263262362322.0 的结果
2023-02-04 00:14:08 +08:00
回复了 Laussan 创建的主题 Apple Firefox 在 MacOS 上需要多大的内存才能流畅运行?
我的 16G M1 几乎没遇到过因为内存不够而导致的卡顿问题,你要开多少 Tab 呢?如果真的很多那可能确实不够,我怀疑 macOS 上的 Firefox 有一点点内存泄漏,觉得不对劲了先 Command+Q 再重新打开。

倒是 57 版本大改架构以前的 Firefox 经常很卡,那时候确实不怎么占内存,进程也少。
1  2  3  4  5  6  7  8  9  10 ... 11  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5324 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 38ms · UTC 09:26 · PVG 17:26 · LAX 02:26 · JFK 05:26
Developed with CodeLauncher
♥ Do have faith in what you're doing.