Local Inter-Process Communication: Difference between revisions

Content deleted Content added
Clarify what "by calling Windows APIs" refers to (some APIs are implemented "under the hood" by sending messages, using LPC, to system processes).
changed "IPC" to "communication" to fix redundancy -- "inter process communication between procecesses"
Line 1:
The '''Local Procedure Call''' ('''LPC''', often also referred to as '''Lightweight Procedure Call''' or '''Local Inter-Process Communication''') is an internal, undocumented [[inter-process communication]] facility provided by the [[Microsoft]] [[Windows NT]] [[Kernel (computer science)|kernel]] for lightweight [[inter-process communication|IPC]] between [[process (computing)|process]]es on the same computer. As of [[Windows Vista]], LPC has been rewritten as '''Advanced Local Procedure Call''' ('''ALPC''') in order to provide a high-speed scalable communication mechanism required to efficiently implement [[User-Mode Driver Framework]], whose user-mode parts require an efficient communication channel with UMDF's components in the [[Architecture_of_Windows_NT#Executive|executive]].<ref>{{Harvcoltxt|Russinovich|Solomon|Ionescu|2009|p=201}}</ref>
 
The (A)LPC interface is part of Windows NT's undocumented [[Native API]], and as such is not available to applications for direct use. However, it can be used indirectly in the following instances: