主权项 |
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. |