【问题标题】:What does the PB prefix stand for in many Mac APIs?PB 前缀在许多 Mac API 中代表什么?
【发布时间】:2020-02-27 15:43:29
【问题描述】:

我一直在查看一些old Mac programming references,发现了很多具有如下命名模式的三个 API:

  • FSIterateForks
  • PBIterateForksSync
  • PBIterateForksAsync

我很确定FS- 用于“文件系统”。但我似乎找不到PB- 的用途。请注意,它似乎总是与后缀之一-Sync-Async 一起使用。

我不认为在这种情况下它是用于“PowerBook”或“Petabyte”或“pasteboard”,尽管在 Apple 世界中的某些情况下它们都使用“pb”的缩写。

它可以代表“Public Beta”吗?我认为这是在发布之前用于 OSX 的?但在 API 名称中体现这一点似乎有点奇怪。

【问题讨论】:

    标签: macos api terminology


    【解决方案1】:

    从函数签名来看,它代表“param block”:

    extern OSErr  PBIterateForksSync(FSForkIOParam * paramBlock)  __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0, __MAC_10_8, __IPHONE_NA, __IPHONE_NA);
    extern void  PBIterateForksAsync(FSForkIOParam * paramBlock)  __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0, __MAC_10_8, __IPHONE_NA, __IPHONE_NA);
    

    所有这些PB 函数都采用一个名为paramBlock 的参数。

    【讨论】:

    • 完美!谢谢你。因此,参数块又名 HFS 参数块是(或曾经是??)文件管理器中的一个重要结构。贯穿this PDF on Apple's developer site的讨论:“低级例程通常对请求的任务提供最大的控制;它们由前缀PB和PBH标识,表示它们将参数块的地址作为参数。”跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-28
    • 2011-05-29
    • 2020-01-22
    • 1970-01-01
    • 2010-10-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多