Mach taskSelf generally used only with vmAllocateWithPager, vmAllocate, and vmDeallocate YggdrasilInitImpl uses portRestrict, portAllocate, portUnrestrict, MachPortsLookup, taskNotify YggdrasilInitImpl looks for connection failures 8 vmAllocate YggFileImpl allocates the shadow bitmap (and something) 8 vmAllocateWithPager YggBuffManImpl and YggFileImpl (all kinds of init code) 8 vmDeallocate CamelotImpl for dumping VM from messages YggdrasilInitImpl for GetTheDSPort YggFileImpl for all kinds of init code YggBuffManImpl for dumping buffers msgSend YggdrasilInitImpl for MIG calls msgReceive YggdrasilInitImpl for MIG calls nameServerPort YggdrasilInitImpl - init stuff CamelotImpl - using it to find things MachPortsLookup YggdrasilInitImpl wants to find the DS port portAllocate YggdrasilInitImpl portRestrict YggdrasilInitImpl portUnrestrict YggdrasilInitImpl netnameCheckIn YggdrasilInitImpl Camelot DSInitialize YggdrasilInitImpl 8 DSPinObject YggBuffManImpl, YggDIDMapImpl, YggFileImpl, and YggFileSegmentImpl 8 DSLogNewValue YggDIDMapImpl and YggFileImpl 8 DSLogOldValueNewValue YggBuffManImpl and YggFileSegmentImpl DSQInit YggdrasilInitImpl TAAddApplication YggdrasilInitImpl 8 TABegin YggTransactionImpl 8 TAEnd YggTransactionImpl 8 TAKill YggTransactionImpl CALookup YggdrasilInitImpl STServer YggMIGServerProcsImpl - MIG stuff SRServer YggMIGServerProcsImpl - MIG stuff ATServer YggMIGServerProcsImpl - MIG stuff Summary: four things Communications Pin and log dance: DSPinObject, DSLogNewValue, and DSLogOldValueNewValue Transactions: TABegin, TAEnd, and TAKill VM: vmAllocate, vmAllocateWithPager, and vmDeallocate Κ˜head˜codešΟb˜LšœJ˜JLšœT˜T—š ˜ Lšœ/˜/—šΟm ˜ Lšœ7˜7—šž˜Lšœ7˜7—šž ˜Lšœ(˜(Lšœ"˜"Lšœ&˜&Lšœ"˜"—š˜Lšœ˜—š ˜ Lšœ˜—š˜Lšœ˜Lšœ%˜%—šΟn˜Lšœ+˜+—š ˜ Lšœ˜—š ˜ Lšœ˜—š˜Lšœ˜—š˜Lšœ˜——˜šŸ ˜ Lšœ˜—šžŸ ˜ LšœB˜B—šžŸ˜Lšœ˜—šžŸ˜Lšœ%˜%—šŸ˜Lšœ˜—šŸ˜Lšœ˜—šžŸ˜ Lšœ˜—šžŸ˜Lšœ˜—šžŸ˜Lšœ˜—šŸ˜Lšœ˜—šΠbn˜Lšœ!˜!—š ˜Lšœ!˜!—šŸ˜Lšœ!˜!——˜KšŸ˜KšŸH˜HKšœŸœŸœŸ˜(Kšœ œœ ˜5——…—b‡