Interprocess Communication with macOS Apple IPC Methods

Build highly modular software in macOS that interacts deeply and intuitively with other programs. This book explores all techniques available for Inter-process communications (IPC) from high level macOS layers to deep kernel options while applying theoretical concepts into practical implementations...

Full description

Bibliographic Details
Main Author: Dutt, Hem
Format: eBook
Language:English
Published: Berkeley, CA Apress 2021, 2021
Edition:1st ed. 2021
Subjects:
Online Access:
Collection: Springer eBooks 2005- - Collection details see MPG.ReNa
LEADER 03453nmm a2200289 u 4500
001 EB001993916
003 EBX01000000000000001156818
005 00000000000000.0
007 cr|||||||||||||||||||||
008 210608 ||| eng
020 |a 9781484270455 
100 1 |a Dutt, Hem 
245 0 0 |a Interprocess Communication with macOS  |h Elektronische Ressource  |b Apple IPC Methods  |c by Hem Dutt 
250 |a 1st ed. 2021 
260 |a Berkeley, CA  |b Apress  |c 2021, 2021 
300 |a XVII, 284 p. 73 illus  |b online resource 
505 0 |a Chapter 1 : Introduction to IPC on macOS -- Chapter 2 : IPC Through Shared Memory -- Chapter 3 : IPC Through Mach Ports -- Chapter 4 : IPC Through Sockets -- Chapter 5 : IPC Through Apple Events -- Chapter 6 : IPC Through Distributed Notifications -- Chapter 7 : IPC Through Pasteboards -- Chapter 8 : IPC Through XPC -- Chapter 9 : IPC Between a Native App and Web App -- Chapter 10 : Privilege Elevation 
653 |a Apple computer 
653 |a Apple and iOS. 
041 0 7 |a eng  |2 ISO 639-2 
989 |b Springer  |a Springer eBooks 2005- 
028 5 0 |a 10.1007/978-1-4842-7045-5 
856 4 0 |u https://doi.org/10.1007/978-1-4842-7045-5?nosfx=y  |x Verlag  |3 Volltext 
082 0 |a 005.268 
520 |a Build highly modular software in macOS that interacts deeply and intuitively with other programs. This book explores all techniques available for Inter-process communications (IPC) from high level macOS layers to deep kernel options while applying theoretical concepts into practical implementations on real world scenarios. You'll see how IPC techniques are used for exchanging data and messages among multiple threads in one or more processes, which may be running on one or more computers connected by a network or running locally. IPC methods can be divided into methods for message passing, synchronization, shared memory, and remote procedure calls (RPC). A poorly conceived IPC can even expose an entire network to over-the-network attacks. Despite the risks, processes and applications absolutely need to communicate with each other across your system and the network.  
520 |a You will: Expand the capabilities of your programs by sharing data within multiple applications Understand and dig deep into the world of Helper tools to create apps that need user privilege elevation Enhance the modularity of a system by allowing your applications to interact and share data with a website 
520 |a You'll see how these communications facilitate information sharing, computational speedup, modularity, convenience, and privilege separation. In macOS, a program has a number of ways to communicate with other programs. These mechanisms for IPC often exist in different layers of the system. You'll examine how each has its own specific purposes, limitations, and intended scenarios. Some are more suitable than others for code written at a certain level of the system. For example, a kernel extension would not make use of Apple events. Additionally, the book reveals that different users have different rights when it comes to accessing files, changing system wide settings, and so on, depending on whether they are admin users or ordinary users. Running code with root or administrative privileges can intensify the dangers posed by security vulnerabilities. You'll learn that to elevate privileges safely, it is mandatory for the application to perform the task through a secure Helper process.