首页> 外国专利> DYNAMIC LIBRARY TASK SWITCHING

DYNAMIC LIBRARY TASK SWITCHING

机译:动态图书馆任务切换

摘要

A method for providing per-instance data memory in a particular dynamic link library loaded in a random access memory address space both as part of a first task and as part of a second task loaded in the address space simultaneously, in a computer having memory management hardware including a local descriptor table to map selectors to base addresses. The method includes providing a task switch enhancer DLL (the TSE); providing in the TSE a DLL registration routine to register a DLL with the TSE; providing in the particular DLL a call to the DLL registration routine; providing in the TSE a task registration routine to register a task with the TSE; providing in the first task and in the second task a call to the task registration routine; providing a routine requesting the operating system to provide a switching notification whenever execution of any task is about to begin or end and whenever any task is about to cease to exist; providing in the TSE a segment allocation routine for allocating a memory segment for storing per-instance data of a DLL for a task as a substitute for an original per-instance data segment for that task, and maintaining a substitute base address being a base address for the allocated segment in the LDT entry and maintaining an original base address being the original base address of the original segment in the LDT entry; calling the TSE segment allocation routine for a per-instance data segment of the particular DLL for the first task during initialization of the first task and calling the TSE segment allocation routine for a per-instance data segment of the particular DLL for the second task during initialization of the second task; providing in the TSE a base address setup routine to store in the LDT entry the substitute base address of a per-instance segment of a task before that task begins execution; and invoking the base address setup routine for the substitute base address for the first task in response to a switching notification received by the TSE that the first task is about to begin execution.
机译:在具有存储器管理的计算机中,用于同时在随机存取存储器地址空间中加载的特定动态链接库中提供按实例的数据存储器的方法,该动态链接库既作为第一任务的一部分,又作为第二任务的一部分同时加载在地址空间中,作为第二任务的一部分硬件包括将选择器映射到基地址的本地描述符表。该方法包括提供任务切换增强器DLL(TSE);以及在TSE中提供DLL注册例程以向TSE注册DLL;在特定的DLL中提供对DLL注册例程的调用;在TSE中提供任务注册例程以向TSE注册任务;在第一任务和第二任务中提供对任务注册例程的调用;提供例程,要求操作系统在任何任务的执行即将开始或结束时以及任何任务将要停止存在时提供切换通知;在TSE中提供段分配例程,该段分配例程用于分配用于存储任务的DLL的每个实例数据的存储器段,以代替该任务的原始每个实例数据段,并保持作为基地址的替代基地址用于在所述LDT条目中分配的段,并保持原始基地址为所述LDT条目中原始段的原始基地址;在第一个任务初始化期间,为第一个任务的特定DLL的每个实例数据段调用TSE段分配例程,在第二个任务期间,为第二个任务的特定DLL的每个实例数据段调用TSE段分配例程初始化第二个任务;在TSE中提供基址设置例程,以在该任务开始执行之前,将该任务的每个实例段的替代基址存储在LDT条目中;响应于TSE接收到的第一任务即将开始执行的切换通知,为第一任务的替代基地址调用基地址设置例程。

著录项

相似文献

  • 专利
  • 外文文献
  • 中文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号