发明名称 Minimizing overhead in resolving operating system symbols
摘要 A symbol resolution unit can be configured for resolving conflicting operating system symbols. A default symbol resolution data structure can be accessed to resolve a symbol associated with a client of an operating system. A first data entry that corresponds to the symbol is located in the default symbol resolution data structure. It is determined that the first data entry indicates that the symbol is marked special (e.g., as a conflicting operating system symbol). A secondary symbol resolution data structure is accessed in response to determining that the first data entry indicates that the symbol is marked special. A second data entry that corresponds to the symbol is located in the secondary symbol resolution data structure based, at least in part, on an identifier of the client. A memory location indicated in the second data entry that corresponds to the symbol is provided to the client.
申请公布号 US9075634(B2) 申请公布日期 2015.07.07
申请号 US201012834356 申请日期 2010.07.12
申请人 International Business Machines Corporation 发明人 Peckham Stephen B.;Stence Donald R.;Stephenson Marc J.
分类号 G06F9/44;G06F9/445;G06F9/455 主分类号 G06F9/44
代理机构 DeLizio Law, PLLC 代理人 DeLizio Law, PLLC
主权项 1. A method of resolving conflicting symbols comprising: receiving an indication that a first symbol should be added to a symbol resolution data structure, wherein the first symbol is associated with a first symbol name, wherein the first symbol is associated with a first client of an operating system; in response to said receiving the indication that the first symbol should be added to the symbol resolution data structure, determining that the first symbol name exists in a default symbol resolution data structure; in response to said determining that the first symbol name exists in the default symbol resolution structure, indicating in a first data entry that the first symbol is a conflicting symbol wherein the default symbol resolution data structure comprises the first data entry; andinserting a second data entry into a secondary symbol resolution data structure, wherein the second data entry identifies the first symbol and an identifier of the first client of the operating system; receiving a first request to resolve the first symbol, wherein the first request comprises an identifier of the first client of the operating system; in response to said receiving the first request to resolve the first symbol, locating the first data entry in the default symbol resolution data structure;determining that the first data entry indicates that the first symbol is a conflicting symbol;in response to said determining that the first data entry indicates that the first symbol is a conflicting symbol, locating the second data entry in the secondary symbol resolution data structure based, at least in part, on the identifier of the first client of the operating system; andproviding, to the first client of the operating system, a first memory location, wherein the first memory location is indicated in the second data entry; receiving a second request to resolve the first symbol, wherein the second request comprises an identifier of a second client of the operating system; in response to said receiving the second request to resolve the first symbol, locating the first data entry in the default symbol resolution data structure;determining that the first data entry indicates that the first symbol is a conflicting symbol;in response to said determining that the first data entry indicates that the first symbol is a conflicting symbol, locating a third data entry based, at least in part, on the identifier of the second client of the operating system, wherein the secondary symbol resolution data structure comprises the third data entry; andproviding, to the second client of the operating system, a second memory location, wherein the second memory location is indicated in the third data entry, wherein the first client of the operating system and the second client of the operating system each comprise one of a workload partition, a compatibility runtime environment workload partition, and an application.
地址 Armonk NY US