📄 sprofile.c
字号:
"FS_FindFirstFileW", "FS_CreateFileW", "FS_CeRegisterFileSystemNotification", "FS_CeRegisterReplNotification", "FS_CeOidGetInfo", "FS_CeFindFirstDatabase", "FS_CeCreateDatabase", "FS_CeSetDatabaseInfo", "FS_CeOpenDatabase", "prgRegCloseKey", "prgRegCreateKeyExW", "prgRegDeleteKeyW", "prgRegDeleteValueW", "prgRegEnumValueW", "prgRegEnumKeyExW", "prgRegOpenKeyExW", "prgRegQueryInfoKeyW", "prgRegQueryValueExW", "prgRegSetValueExW", "FS_CreateContainerW", "FS_CeDeleteDatabase", "FS_RegisterDevice", "FS_DeregisterDevice", "FS_SetFileAttributesW", "FS_GetStoreInformation", "FS_CeGetReplChangeMask", "FS_CeSetReplChangeMask", "FS_CeGetReplChangeBits", "FS_CeClearReplChangeBits", "FS_CeGetReplOtherBits", "FS_CeSetReplOtherBits", "FS_GetSystemMemoryDivision", "FS_SetSystemMemoryDivision" }; // from coreos\filesys\filesys.c, class name "W32H" char *W32HNames[] = { "FS_CloseFileHandle", "0", "FS_ReadFile", "FS_WriteFile", "FS_GetFileSize", "FS_SetFilePointer", "FS_GetFileInformationByHandle", "FS_FlushFileBuffers", "FS_GetFileTime", "FS_SetFileTime", "FS_SetEndOfFile", "FS_DeviceIoControl" };// from coreos\filesys\filesys.c, class name "W32D" char *W32DNames[] = { "FS_DevCloseFileHandle", "0", "FS_DevReadFile", "FS_DevWriteFile", "FS_DevGetFileSize", "FS_DevSetFilePointer", "FS_DevGetFileInformationByHandle", "FS_DevFlushFileBuffers", "FS_DevGetFileTime", "FS_DevSetFileTime", "FS_DevSetEndOfFile", "FS_DevDeviceIoControl" }; // from coreos\filesys\filesys.c, class name "FFHN" char *FFHNNames[] = { "FS_FindClose", "0", "FS_FindNextFile" }; // from coreos\filesys\filesys.c, class name "DBFA" char *DBFANames[] = { "FS_CloseDBFindHandle", "0", "FS_CeFindNextDatabase" }; // from coreos\filesys\filesys.c, class name "DBOA" char *DBOANames[] = { "FS_CloseDBHandle", "0", "FS_CeSeekDatabase", "FS_CeDeleteRecord", "FS_CeReadRecordProps", "FS_CeWriteRecordProps" }; // from coreos\nk\kernel\kwin32.c, class name Wn32 char *Wn32Names[] = { "SC_Nop", "SC_NotSupported", "SC_CreateAPISet", "SC_VirtualAlloc", "SC_VirtualFree", "SC_VirtualProtect", "SC_VirtualQuery", "SC_VirtualCopy", "SC_LoadLibraryW", "SC_FreeLibrary", "SC_GetProcAddressW", "SC_ThreadAttachAllDLLs", "SC_ThreadDetachAllDLLs", "SC_GetTickCount", "OutputDebugStringW", "SC_NotSupported", "SC_TlsCall", "SC_GetSystemInfo", "0", "ropen", "rread", "rwrite", "rlseek", "rclose", "0", "0", "SC_RegisterDbgZones", "SC_NotSupported", "NKDbgPrintfW", "SC_ProfileSyscall", "SC_FindResource", "SC_LoadResource", "SC_NotSupported", "SC_SizeofResource", "OEMGetRealTime", "OEMSetRealTime", "SC_ProcessDetachAllDLLs", "SC_ExtractResource", "SC_GetRomFileInfo", "SC_GetRomFileBytes", "SC_CacheSync", "SC_AddTrackedItem", "SC_DeleteTrackedItem", "SC_PrintTrackedItem", "SC_GetKPhys", "SC_GiveKPhys" }; // from coreos\nk\kernel\kwin32.c, class name KW32 char *KW32Names[] = { "SysCall_NOT_SUPPORTED", "SysCall_NOT_SUPPORTED", "SC_GetOwnerProcess", "SC_GetCallerProcess", "SC_PerformCallBack", "SC_InterruptInitialize", "SC_InterruptDone", "SC_InterruptDisable", "SC_GetCurrentProcessId", "SC_GetCurrentThreadId", "SC_IsPrimaryThread", "SC_KillAllOtherThreads", "SC_OtherThreadsRunning", "SC_SetProcPermissions", "SC_CallDebugger", "SC_SetKernelAlarm", "SC_RaiseException", "SC_GetCurrentPermissions", "SC_GetFSHeapInfo", "SC_SetKMode", "SC_GetProcAddrBits" }; // from coreos\nk\kernel\schedule.c, class name THRD char *THRDNames[] = { "SysCall_THREAD_HANDLECLOSE", "SysCall_NOT_SUPPORTED", "SysCall_THREAD_TAKECRITSEC", "SysCall_THREAD_RELEASECRITSEC", "SysCall_THREAD_SUSPEND", "SysCall_THREAD_RESUME", "SysCall_THREAD_SLEEP", "SysCall_THREAD_CREATEEVENT", "SysCall_THREAD_SETPRIO", "SysCall_THREAD_GETPRIO", "SysCall_THREAD_SETLASTERROR", "SysCall_THREAD_GETLASTERROR", "SysCall_THREAD_TERMINATE", "SysCall_THREAD_GETRETCODE", "SysCall_THREAD_LOADSWITCH", "SysCall_THREAD_TERMINATE_AND_SIGNAL", "0", "SysCall_THREAD_TURNONPROFILING", "SysCall_THREAD_TURNOFFPROFILING", "SysCall_THREAD_TURNONSYSCALLPROFILING", "SysCall_THREAD_TURNOFFSYSCALLPROFILING" }; // from coreos\nk\kernel\schedule.c, class name PROC char *PROCNames[] = { "SysCall_PROC_HANDLECLOSE", "SysCall_NOT_SUPPORTED", "SysCall_NOT_SUPPORTED", "SysCall_NOT_SUPPORTED", "SysCall_PROC_ALLOCMODULE", "SysCall_PROC_FREEMODULE", "SysCall_PROC_GETDEFSTACKSIZE", "SysCall_PROC_TERMINATE", "SC_PROC_IsBadPtr", "SysCall_PROC_SETDBGZONE", "SysCall_PROC_SETDBGINFO", "SysCall_PROC_GETDBGINFO", "SysCall_PROC_MAPPTR", "SysCall_PROC_MAPTOPROC", "SysCall_PROC_GETPROCFROMPTR", "SysCall_PROC_TERMINATEOTHER" }; // from coreos\nk\kernel\schedule.c, class name EVNT char *EVNTNames[] = { "SysCall_EVENT_FREE", "SysCall_EVENT_WAIT", "SysCall_EVENT_MODIFY" }; // from shell\notify\server\process.cpp, class name "NTFY" char *NTFYNames[] = { "NotifyCallback", "PegSetUserNotification", "PegClearUserNotification", "PegRunAppAtTime", "PegRunAppAtEvent", "PegHandleAppNotifications" }; // from shell\shell\server\shell.cpp, class name "SHEL" char *SHELNames[] = { "ShellNotifyCallback", "ShellApiReservedForNK", /* Reserved for NK */ "XShellExecuteEx", "XGetOpenFileName", "XGetSaveFileName", "SHGetFileInfo", "Shell_NotifyIcon", "SHAddToRecentDocs", "SHCreateShortcut", "SHCreateExplorerInstance" }; // from coreos\nk\kernel\objdisp.c, class name "APIS" char *APISNames[] = { "SC_CloseAPISet", "SC_NotSupported", "SC_RegisterAPISet", "SC_CreateAPIHandle", "SC_VerifyAPIHandle" };char *MethodToName(long iMethod, char ClassName[4]) { if (UNKNOWNMETHOD == iMethod) { return NULL; } else if (!strncmp(ClassName, "GDI", 3)) { return GDINames[iMethod]; } else if (!strncmp(ClassName, "USER", 3)) { return USERNames[iMethod]; } else if (!strncmp(ClassName, "INT", 3)) { return INTNames[iMethod]; } else if (!strncmp(ClassName, "TEST", 3)) { return TESTNames[iMethod]; } else if (!strncmp(ClassName, "W32A", 4)) { return W32ANames[iMethod]; } else if (!strncmp(ClassName, "W32D", 4)) { return W32DNames[iMethod]; } else if (!strncmp(ClassName, "W32H", 4)) { return W32HNames[iMethod]; } else if (!strncmp(ClassName, "FFHN", 3)) { return FFHNNames[iMethod]; } else if (!strncmp(ClassName, "DBFA", 3)) { return DBFANames[iMethod]; } else if (!strncmp(ClassName, "DBOA", 3)) { return DBOANames[iMethod]; } else if (!strncmp(ClassName, "Wn32", 3)) { return Wn32Names[iMethod]; } else if (!strncmp(ClassName, "KW32", 3)) { return KW32Names[iMethod]; } else if (!strncmp(ClassName, "NTFY", 3)) { return NTFYNames[iMethod]; } else if (!strncmp(ClassName, "SHEL", 3)) { return SHELNames[iMethod]; } else if (!strncmp(ClassName, "PROC", 3)) { return PROCNames[iMethod]; } else if (!strncmp(ClassName, "THRD", 3)) { return THRDNames[iMethod]; } else if (!strncmp(ClassName, "EVNT", 3)) { return EVNTNames[iMethod]; } else if (!strncmp(ClassName, "APIS", 3)) { return APISNames[iMethod]; } else { RETAILMSG(1,(L"Unknown class name %a\r\n", ClassName)); return NULL; }}// Not normal strncmp returnsint strncmp(const char *s1, const char *s2, unsigned int l){ unsigned int i; if (!s1 || !s2) { return 1; } for (i = 0; i < l; i++) { if (s1[i] != s2[i]) { return 1; } } return 0;}#endif /*SYSCALL_PROFILING*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -