pal.map 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. PAL {
  2. global:
  3. # Drawbridge ABIs
  4. DkVirtualMemoryAlloc; DkVirtualMemoryFree; DkVirtualMemoryProtect;
  5. DkThreadCreate; DkThreadDelayExecution;
  6. DkThreadYieldExecution; DkThreadExit; DkThreadResume;
  7. DkMutexCreate; DkNotificationEventCreate;
  8. DkSynchronizationEventCreate;
  9. DkMutexRelease;
  10. DkEventSet; DkEventClear;
  11. DkObjectsWaitAny;
  12. DkStreamOpen; DkStreamRead; DkStreamWrite;
  13. DkStreamMap; DkStreamUnmap; DkStreamSetLength;
  14. DkStreamFlush; DkStreamDelete;
  15. DkSendHandle; DkReceiveHandle; # Added by us
  16. DkStreamWaitForClient;
  17. DkStreamGetName;
  18. DkStreamAttributesQueryByHandle; DkStreamAttributesQuery;
  19. DkProcessCreate; DkProcessExit;
  20. DkSystemTimeQuery; DkRandomBitsRead;
  21. DkInstructionCacheFlush;
  22. DkObjectReference; DkObjectClose;
  23. # objects checkpoint?
  24. # objects reload?
  25. # The ABIs we added in the paper
  26. DkSetExceptionHandler; DkExceptionReturn; # exceptions
  27. DkCreatePhysicalMemoryChannel; # IPC
  28. DkPhysicalMemoryCommit; # IPC
  29. DkPhysicalMemoryMap; # IPC
  30. DkThreadStackSet; # set stack range
  31. DkThreadPrivateSet; DkThreadPrivateGet; # set/get thread private area
  32. DkThreadGetCurrent; # get a handle to describe the current thread
  33. DkStreamChangeName;
  34. DkStreamAttributesSetByHandle;
  35. DkSegmentRegister; # set segment register
  36. DkMemoryAvailableQuota;
  37. DkCpuIdRetrieve; # retrieve CPUID
  38. # Debugging ABIs
  39. pal_printf; pal_snprintf; DkDebugAttachBinary; DkDebugDetachBinary;
  40. # Control block
  41. pal_control; pal_control_addr;
  42. local: *;
  43. };