IPC Protocol Definition Language (IPDL)

  • Revision slug: IPDL
  • Revision title: IPC Protocol Definition Language (IPDL)
  • Revision id: 44559
  • Created:
  • Creator: jdm
  • Is current revision? No
  • Comment 2 words added

Revision Content

This article documents the architecture being developed for multi-process isolation. This architecture is being implemented in the Electrolysis project branch and is not yet part of any Mozilla/Firefox release.

IPDL, short for "IPC (Inter-process communication) Protocol Definition Language", is a Mozilla-specific language allowing C++ code to pass messages between processes or threads in an organized and secure way. All messages for multi-process plugins and tabs in Firefox are declared in the IPDL language.

Revision Source

<div class="note">This article documents the architecture being developed for multi-process isolation. This architecture is being implemented in the <a class="link-https" href="https://wiki.mozilla.org/Content_Processes" rel="external
nofollow" target="_blank" title="https://wiki.mozilla.org/Content_Processes">Electrolysis project</a> branch and is not yet part of any Mozilla/Firefox release.</div>
<p>IPDL, short for "IPC (Inter-process communication) Protocol Definition Language", is a Mozilla-specific language allowing C++ code to pass messages between processes or threads in an organized and secure way. All messages for multi-process plugins and tabs in Firefox are declared in the IPDL language.</p>
<ul> <li><a href="/en/IPDL/Tutorial" title="en/IPDL/Getting Started">IPDL Tutorial<br> </a></li> <li><a href="/en/IPDL/Creating_a_New_Protocol" title="en/IPDL/Creating a New Protocol">Quick Start: Creating a New Protocol</a></li> <li><a href="/en/IPDL/Type_Serialization" title="en/IPDL/Type Serialization">Serializing Custom Types</a></li> <li><a href="/en/IPDL/Best_Practices" title="en/IPDL/Best Practices">Best Practices</a></li> <li><a href="/en/IPDL/Glossary" title="en/IPDL/Glossary">IPDL Glossary</a></li> <li><a href="/en/IPDL/Reference" title="en/IPDL/Reference">IPDL Language Reference</a></li> <li><a href="/en/IPDL/Error_Handling" title="en/IPDL/Error Handling">Error and shutdown handling in IPDL protocols</a></li> <li><a href="/en/IPDL/Processes_and_Threads" title="en/IPDL/Processes and Threads">How IPDL Uses Processes, Threads, and Sockets</a></li> <li><a href="/en/IPDL/Shared_Memory" title="en/IPDL/Shared Memory">IPDL Shared Memory</a></li>
</ul>
Revert to this revision