V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
dioxide
V2EX  ›  程序员

在操作系统 API 的开放程度上, macOS 和 Win 哪个更封闭? 限制更多?

  •  
  •   dioxide · 2019-11-06 16:46:31 +08:00 · 3572 次点击
    这是一个创建于 1878 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题. 比如说?

    20 条回复    2019-11-07 13:19:53 +08:00
    janxin
        1
    janxin  
       2019-11-06 16:53:26 +08:00
    之前 macOS 挺好的,不过最新的 Catalina 似乎对部分权限做了限制,会让用户授权

    Windows 只要管理员权限跑起来,你就....
    wdhwg001
        2
    wdhwg001  
       2019-11-06 17:30:59 +08:00 via iPhone
    Windows 的 UAC 是一个“防呆”设计,而不是一个严格意义上的多用户隔离式的沙盒,也不存在任何粒度细分。绕过 UAC 的方法层出不穷,微软在修复 UAC 漏洞上也不怎么上心。
    wdhwg001
        3
    wdhwg001  
       2019-11-06 17:36:10 +08:00 via iPhone   ❤️ 2
    Windows 始终是一个宽容权限的,单用户的,传统文件系统的操作系统,它的安全性通常要靠第三方商业工具维护,其中包括约束软件权限的主动防御软件和依靠复杂的黑名单和静态分析以删除恶意软件的“杀毒”软件。
    whi147
        4
    whi147  
       2019-11-06 17:38:08 +08:00
    macOS 做音频录制,没有 api 录制扬声器声音,只能通过第三方打驱动的方式,这很不开放
    janus77
        5
    janus77  
       2019-11-06 17:40:13 +08:00
    windows 的破解版和各种 ghost 广告植入版 就是例证吧
    passerbytiny
        6
    passerbytiny  
       2019-11-06 17:44:45 +08:00   ❤️ 2
    @wdhwg001 #2 讨论开放的时候不要参杂安全。一套 API,任何方都能用为最开放,经过公开方或第三方认证的一方才能使用为常见的开放,只有经过特定方认证的一方才能使用为最封闭。一套 API,经过认证的一方跟第一方都可以使用全部 API 为开放,第一方可以使用全部但经过认证的一方只能使用部分则为封闭。
    aptx4689
        7
    aptx4689  
       2019-11-06 17:46:19 +08:00   ❤️ 1
    @janxin 这个权限问题真是太蠢了,如果老程序不在自己的 plist 声明权限,那程序不会像 iOS 一样直接崩溃,而是会出各种莫名奇妙的问题,比如针对语音来说就会自动返回空,开黑讲了一堆话别人都听不见,蠢死了……
    dioxide
        8
    dioxide  
    OP
       2019-11-06 18:26:22 +08:00
    @whi147 @janxin , 同感, 仅作为普通用户的角度,也能感觉到 macOS 是在朝更加封闭的方向走.
    dioxide
        9
    dioxide  
    OP
       2019-11-06 18:34:35 +08:00
    @passerbytiny 这没错, 但安全和开放总是此消彼长的关系么?
    guanhui07
        10
    guanhui07  
       2019-11-06 18:51:04 +08:00
    我每次都要输入 sudo 记得 之前没升级系统前 不需要。
    secondwtq
        11
    secondwtq  
       2019-11-06 19:02:33 +08:00   ❤️ 1
    话说 macOS 写驱动的资料貌似少得要命 ...
    有 API 没文档算不算不开放呢
    stoneabc
        12
    stoneabc  
       2019-11-06 19:10:24 +08:00
    @secondwtq
    说到文档,应该没几个比 MSDN 更专业详细的了…
    ceilingCloud
        13
    ceilingCloud  
       2019-11-07 00:32:30 +08:00 via Android
    @wdhwg001 #3 现代 Windows 时多用户操作系统。
    ysc3839
        14
    ysc3839  
       2019-11-07 01:32:04 +08:00 via Android
    个人认为是 Linux > Windows > macOS。
    Windows 有小部分私有 API,但一般不阻止软件去使用,只不过稳定性无法保证。macOS 的话我没详细了解过,应该也是不做限制。
    Windows UWP 的话,有些 API (如 VPN) 是要经过认证才能上架商店的,但本地调用没有限制。
    ysc3839
        15
    ysc3839  
       2019-11-07 01:37:25 +08:00 via Android
    @ysc3839 补充一下,上面的 Linux > Windows > macOS 指的是开放程度。
    jedihy
        16
    jedihy  
       2019-11-07 04:26:39 +08:00
    Definitely, Windows 比 macOS 在 API 上更加开放。macOS 的驱动开发就是一坨屎,不仅资源少,官方文档也非常烂,很多东西都 deprecated 了。Catalina 稍微做了一些进步。
    passerbytiny
        17
    passerbytiny  
       2019-11-07 09:14:44 +08:00
    @dioxide #9 此消彼长只是初级认识。如果以开放性为 X 轴,安全性为 Y 轴,那么( x,y )这条线,应该是从 Y 轴正方向上某个点开始,缓慢向下穿过 X 轴,到达某个程度后,急速向上回穿 X 轴。类似于下面这样:

    安全 X
    ^ XX
    | X
    | XX
    | X
    | XX
    | X
    | XX
    | X
    | X
    XX XX
    |XX XX
    | XX XX
    | XXX XX
    | XXX XX
    | XX XX
    +--------XX--------------------X------------> 开放
    XX XX
    XX XX
    XX XXX
    XX XXXXX
    XXXXX
    passerbytiny
        18
    passerbytiny  
       2019-11-07 09:18:15 +08:00
    站长竟然进入每行做 trim。看这样行不

    安全.........................................X..
    ^.........................................XX....
    |.........................................X.....
    |........................................XX.....
    |........................................X......
    |.......................................XX......
    |.......................................X.......
    |......................................XX.......
    |......................................X........
    |.....................................X.........
    XX...................................XX.........
    |XX.................................XX..........
    |.XX...............................XX...........
    |..XXX............................XX............
    |....XXX.........................XX.............
    |......XX.......................XX..............
    +--------XX--------------------X------------>.开放
    ..........XX.................XX.................
    ...........XX..............XX...................
    .............XX.........XXX.....................
    ..............XX....XXXXX.......................
    ...............XXXXX............................
    passerbytiny
        19
    passerbytiny  
       2019-11-07 09:19:51 +08:00
    间距对不上,凑合着看吧,建议复制出去看。
    yinzhili
        20
    yinzhili  
       2019-11-07 13:19:53 +08:00
    Windows 应该是 API 最开放的商业软件了吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4618 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 09:55 · PVG 17:55 · LAX 01:55 · JFK 04:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.