Skip to content

G115 已证依赖的实际定义,不靠服务名猜测 ​

1. 完整目标与基线 ​

基线4c7b56b/main;Owner同AI方案/实现/测试/自复核,非第三方验收。G114真实Memory Gauge remote通道未在既有设备广告中,而resources/procinfo已广告;不能猜成别名。本轮沿G114已证IDEFoundation的IDEDataProvider_Memory与IDEDataProviderMemoryTaskPhysicalFootprintKey实际导入定义,确定literal key、资源provider路由、读点与缓存语义。原54/500ms/五轮120槽连续有效100%/3I/单token/2MiB或5%/完整准备20与40MiB变化/尾部失败不改;formal0/5/accepted0/54,129唯一安装DMG维持。

2. 前置限定与资源预算 ​

已只读检查四个固定父目录,实际文件在/Applications/Xcode.app/Contents/Frameworks/IDEFoundation.framework/IDEFoundation,57623280B(不是SharedFrameworks);此路径查找与stat不作内容结论。只新增这一个固定binary输入,原件<=64MiB、原件+保留x86_64 slice<=96MiB。流式SHA256与slice逐字节核,保留原件与offset/长度/架构;不动态加载或执行framework,不递归Xcode搜索,不建立新环境。

先合成夹具验证Mach section边界/零填充/歧义、精确类/字段匹配、LC_FUNCTION_STARTS、过滤器输出截断与子进程终止。再有限nm/dyld_info/otool/llvm-objdump。原binary大小更大,不沿用G114四小文件预算:工具单60s/树512MiB,解析120s/256MiB,串行1。输出流每工具扫描<=128MiB、保留<=8MiB;symbols实际定义域精确过滤后<=2MiB、fixups原始保留<=8MiB;最多32函数/32KiB机器码、每片段128KiB/合2MiB;累积保留metadata<=16MiB。预计本地核验<30s,复杂度O(固定binary与有界输出),不对整库生成无限反汇编,不无限扩关联类。

仅核已证Memory provider及其真实继承类,或同库实际resources/procinfo对应定义;方法归属必须classlist/metadata/IMP与原指令相互核,LC_FUNCTION_STARTS定边界。dyld官方fixups先核CFString/rebase/bind;字段名与字符串出现只作线索。若工具或解析超门即停该步骤并保留失败,禁止自动原样重试、改上限或无证据扩文件;继续只能明确不同技术路径与偏差,整体如实partial。

3. 准入与停止条件 ​

区分本机task_info/内存读取与远端设备服务,不用LocalComputer路径冒充iPhone;不能把task_basic_info/RSS/min/max替physical footprint,不能用hostpoll周期当device读频。逐项需要literal key、当前值scope/units、实际目标绑定、读取触发及缓存、resources与Memory真实对应、远端协议与无侵入权限。已证host定义不推出device实现。未证则unknown/sourceAdmitted=false;不发猜RPC、不attach/debug、不查询手机、不改SDK或产品。

4. 交付与完整门禁 ​

私有原件、工具控制、行SHA与机器码、资格矩阵/资源/封存;旧G114全seal/264源码SDK/v3/129whole-tree/唯一安装DMG核同。10文档闭环与新immutableHTML;site仅build300s/3GiB不部署;窄commit、双远程各一次(GitLab失败无重试不阻断)与单Webhook。0device/launch/signal/Session/产品SDKFixture改/新包/环境/网站/memory写。

若明确真实可调用的只读scalar/字段/路由,下一另立有界设备资格测试;否则具体报告当前候选未准入的原因,不把原run供给至少8缺外推为全平台不可能,不循环同源重采。独立准确/正式五轮/GUI/成本/电学温度外部参考/最终公证GPL/A1OPEN/HybridFROZEN/G9OFF仍开,host审计不当全目标完成。

Implementation Update · 2026-10-07(工具控制首失败保留) ​

首轮控制在任何新binary内容读取前停止:快速无换行producer已退出后,streamcap在EOF截留分支对旧工具组发kill触发PermissionError,未产出cap机读件。expected exit1不代表负控正确,工具控制门未通过;collection.log与原工具保留,不回改或自动重跑。本轮整体如实partial。

修正采用新的streamcap-r1与collection-r1独立输出;kill前先poll本工具子进程,terminal不发送信号;负控改为有换行且写后保持存活的producer,必须留存cap原因/exit/扫描与截留计数。旧日志不覆盖,无binary重复采集(首轮0读取),原预算不动。控制正确后才首次读取固定原件。

Validation Update · 2026-10-07(真实输出硬限已生效) ​

修正版11工具控制通过后,首次固定binary及slice成功保留(57623280+28950400B),nm扫描11913688B而精确限定保留10123B。官方dyld_info fixups原始输出达到8MiB硬限即终止自身工具(exit−9),collection-r1停止;不是超限后继续运行。原8MiB日志保留,不增上限、不重跑工具。总体partial与完整目标未验保持。

后续采用不同路径:只使用已留存的官方fixup前缀(足以核已知constant与CFString)及保留thin文件的LC_DYLD_CHAINED_FIXUPS,严格页链成员/格式/导入边界解析目标类自身metadata;先合成已知pointer64/offset/bind/页步长负控,并与官方原前缀全部可核目标交叉。只解析实际Memory类及真实继承定义,再最多32函数/32KiB原码,原时间/内存/metadata总门不改;未含于完整classlist的字符串绝不当类。0重新采binary/生成全量objc输出/phone。

Implementation Update · 2026-10-07(精确weak-import口径) ​

native首解析把官方bind尾缀[weak-import]当成符号名的一部分而停在DTDSLaunchOptionArgumentsKey;原native.log/工具保留。已定位实际dyld import bit8与官方weak尾缀,native-r1仅规范化这一明确后缀且必须逐行核weak位;不忽略任意后缀,不改原fixups、不重跑系统工具或采输入。

Implementation Update · 2026-10-07(special ordinal显式区分) ​

native-r1在原前缀weak-def-coalesce/__ZdlPv的signed ordinal−3处停止,原日志保留;此值不是正向依赖库编号,也不是目标类。native-r2显式区分−3 weak-def-coalesce/−2 flat namespace/−1 main executable/0 self与正向库索引,未知ordinal仍拒;逐行symbol与weak位核同,不将weak-def当remote路由。0重取原件或调用工具。

Validation Update · 2026-10-07 · actual key/本机读点已核,远端资格仍未准入 ​

G115已核当前内存literal key与host读取链:memory.task.physical_footprint、task_info flavor23/字段offset144、task-name port获取释放;host计时不当device采样,Memory与resources路由仍未证,原54/500ms/五轮保持。

Owner同AI方案/实施/测试/自复核,非第三方验收;E1固定binary与实际classlist/nlist/指令、E2控制与构建。本批0设备调用/新Session、0产品SDKFixture改/新包/环境/网站/memory写。正式0/5、accepted0/54保持,不把host证据当E4。

1. 原件与真实类/函数归属 ​

实际Frameworks/IDEFoundation57623280B,x86_64 slice28950400B,合86573680B(原64MiB/合96MiB内),原始绝对path/完整SHA与sliceOffset16384均登记;只有这一新binary,没有递归查库/加载或执行framework。4个实际classlist成员IDEDataProvider、IDEDataProvider_Memory、IDEGaugeDataProviderService、IDEDataProvider_procinfo,47自有instance/class methods;Memory/procinfo的superclass是本库IDEDataProvider,Gauge是DVTDeviceService,不以字符串/符号nearest-label冒充类。

18真实方法+5实际block helper,23函数/11630B;每条原指令、stub ff25跳转、got import、selector/ref与CFString原字节核。helper的地址由所属方法实际RIP载入且与exact nlist block symbol一致,边界取LC_FUNCTION_STARTS,不由注释归属。元数据采用原chained pointer格式6、页链成员/有效section边界核;与官方已留存前缀97494完整行逐行rebase/bind/weak位核同(最后截断行不作证),不是伪装官方完整输出成功。原fixups超限记录保持。

2. 当前literal key、读取与缓存范围 ​

实际export _IDEDataProviderMemoryTaskPhysicalFootprintKey → CFString → memory.task.physical_footprint,CFString长度30B与原cstring一致。另两个是memory.task.max_physical_footprint与memory.task.min_physical_footprint,当前值不拿min/max替代。host Memory.captureAttributes:toDictionary:forPID:对缓存的task-name port读取,调用实际bound _task_info,参数flavor23、count93、buffer零初始化0x174B;成功后取该buffer偏移144B的unsigned64值,不经过比例换算,numberWithUnsignedLongLong再用当前CFString写入dictionary。失败分支返回false不造0。

这些是host代码读点与字段偏移,本批未读取额外系统header校验完整TASK_VM_INFO ABI单位,也没有远端callee实证:physicalFootprintBytesUnitsIndependentlyProven=false、remoteLiteralKeyContractProven=false、deviceExactReadPoint/period=unknown。不能从静态名称直接声称所有iPhone数值准确或已经更快。

startSampling的真实同步block调用_task_name_for_pid并缓存port;stop block移除缓存并调用_mach_port_deallocate。缓存的是本机task-name port,不是已证该样本来自某个remote Gauge;capture同步queue block逐target调用上述读取函数,并记录now。不是task_for_pid/debug attach,但这只限定host路径,不宣称remote权限/注入前提已经闭合。

3. Host timer不是设备500ms能力 ​

IDEGaugeDataProviderService.capability真实CFString是Xcode.DebugGaugeDataProvider,由DVTDeviceCapability构建,不是resources服务id或Memory别名。其base sampleAttributes:forPIDs:含未实现assertion,并不定义remote实做;真实Subclass ABI在G114单独已核。

host startTimerAtTime:withInterval:以真实double1e9从秒转ns,dispatch_source_set_timer的leeway100000ns;timer block调用startSamplingForPIDs与sampleAttributes:forPIDs:。host请求timer能配置,并不证明iPhone读取时刻、源刷新周期或无缓存。resources/procinfo的实际remote owner在此固定输入中仍未核,Memory↔resources alias=false(未证明,不是证明不存在)。LocalComputer中的task_info/proc_pid_rusage不能当remote collector读取。

精确原指令锚点行SHA-256
selected/07.stdout L86 / VA 0x2276a9e651f8d905672e10ed29a1c4f0c6831b5524ce4f57298dbf90696f850afbfe25
selected/07.stdout L88 / VA 0x2276b22f399aa1744b1a5685f0ac81fb80bb681624a7437b5118ba0469fa4a95a8d8cc
selected/07.stdout L90 / VA 0x2276ba99c837a2baae5eb50bab5a449b56e7f735f07de87c592e968629f65c0cdd6fdd
selected/07.stdout L117 / VA 0x2277105428393873ddb7a896fcdbd145d8035ebdcb5edf6f55019938e6c96576640e45
selected/07.stdout L145 / VA 0x22779171959bb40762c7a460482db1b0e7d685c2f9d08e041f889a25f6bc18bd269f0b
selected/09.stdout L20 / VA 0xac95e6af8983677684d7a58de96ea9ef9140c665c488ca93e5169cc7fb75c49ee564c
selected/11.stdout L71 / VA 0xad355afb9db0b12986c28388045ce90e0ef37c22708831221b83ec86721a22eb6b380
selected/11.stdout L84 / VA 0xad395d79d8b0c64868ee91ef52c6932e29deedd783e0538dd2287ba533c5e5adea2fb
extra/02.stdout L92 / VA 0x226fdab6ff38cb8f7eae1a63ae9cca55fc5f27d333e8d0c49a0b1c315497a4ba7fe684
extra/03.stdout L107 / VA 0x2274046ebfa53f32e22151d50f1470d42b40ccbb2e04be25ad4dab60fbdbbce4a3cc60

4. 失败与修订均保留,整体partial ​

首collection在读新binary前,EOF后对已terminal快速producer工具组kill触发PermissionError,未形成cap机读件;expected exit1不能当负控成功。新streamcap-r1先poll并区分terminal,负控改写后保持live,有换行producer确实分别触发retained/scanned hardcap,子进程exit−9与cap理由均留存。11定义/输出控制通过后才首次采原件。

collection-r1的nm扫描11913688B只保留10123B exact domain;官方dyld_info触及8388608B截留硬门即停止自身tool(exit−9),不改预算、不重复工具。这是真实超门而停,不是完整官方输出通过。不同后续native解析直接用原thin+已留存prefix,metadata额外有界,未重取binary。

native与native-r1分别在weak-import尾缀、signed special ordinal−3停止,日志/源码保持;native-r2只显式规范这两种精确格式,所有未知格式仍拒绝,并逐行与97494官方prefix核同。6项native格式/边界与crosscheck控制另列,不是指标验收。没有把失败轮覆盖成最后成功,整体partial不因文字收口改判完成。

主监督件wall s直接峰RSS Bexit预期exitpassed
collection-r1.resources.json2.79133210530406410False
collection.resources.json0.7157831911603210False
extras.resources.json1.7986735272371200True
fixups.resources.json0.7456927872921610False
methods.resources.json5.6831015492736000True
native-r1.resources.json0.5941617460454410False
native-r2.resources.json3.07469110230169600True
native.resources.json0.6072527343308810False
negative-r1-retained.resources.json0.2423161185382411True
negative-r1-scanned.resources.json0.2296721179238411True
negative-retained.resources.json0.2744561181696011True
symbols.resources.json1.0096686613811200True

tool单60s/树512MiB、解析120s/256MiB预先预算未变;所有failed/硬限均各自保留,物理I/O峰unknown、采样树RSS不排除间隔内更高峰。原binary完整读取及元数据被计量,不虚写0;旧大Session/blob读取0。旧G114全166件seal/264产品SDK/v3/已装129whole-tree严格签名/唯一登记/唯一DMG收尾核同。10窄文档与新immutableHTML,site仅build300s/3GiB不发布;双远程各一次/单Webhook。

5. 下一动作与整个目标 ​

更有把握的下一动作是G116另立一次真实Memory客户端契约的有界自有目标资格:使用G114实际getter identifier/参数ABI与本轮当前literal key,不能暗换resources名称或重跑同Sysmontap/VM Tracker;先对channel拒绝/empty/超时/生命周期/RSS/退出封存反例,再首次只申请已证Memory channel,拒绝即停止、0 fallback/probe其他名字。只在明确readonly目标约束成立时另定有限read,不启动debugger、不注入、不改产品,device权限/单位/读点/速度不明仍unknown/sourceAdmitted=false。此决策不是本轮设备执行授权。

原54/500ms/3I/单token/五轮120槽连续有效100%/独立2MiB或5%/完整准备20与40MiB变化/尾部所有失败一律保留,formal0/5/accepted0/54;G113原window供给至少8缺不外推全平台无解。GUI/绝对成本/电学温度外部参考缺仪器/最终公证GPL/A1OPEN/HybridFROZEN/G9OFF仍open,goal active。

Perfowl · Performance Observer