SCHEDLOG Migration Issues
Process-level tracking indicates when a process or thread is created or terminated, or when a thread is scheduled. This information can be used to perform such additional tasks as profiling. To enable tracking, you must assign several global pointers in the OAL. Once these pointers are assigned, the kernel uses this information to pass information to the OAL. The following are the OAL-level functions:
In Windows CE 3.0 and earlier, you have the option to the use Schedlog.lib in addition to the hooks in the OAL. This .lib file hooked the OAL function calls for you and enabled you to place their code in a DLL. The following are the Schedlog functions:
- UserLogThreadCreate
- UserLogThreadDelete
- UserLogProcessCreate
- UserLogProcessDelete
- UserLogThreadSwitch
In Windows CE 2.12, these functions were enhanced and the names changed to UserLogThreadCreateEx, UserLogThreadDeleteEx, UserLogProcessCreateEx, UserLogProcessDeleteEx, and UserLogThreadSwitchEx.
In Windows CE .NET, event tracking is introduced that expands on the information provided by the Schedlog architecture. The UserLog* functions are no longer supported in Windows CE .NET. Also, the SchedlogGetIntCodePtr function was removed because its only function was to work with the UserLog* functions. The OAL-level functions are still supported, as well as the decoding functions.
See Also
Hardware-Assisted Profiling | Migration from Windows CE 2.12 to Windows CE .NET
Last updated on Wednesday, April 13, 2005
© 2005 Microsoft Corporation. All rights reserved.