tvOS: Document differences from iOS

Explain that most of iOS's architecture and constraints apply, but tvOS
is unable to monitor and catch Mach exceptions.

Bug: 405140658
Change-Id: I15468029bb3d43266984bcd483113509f379ee63
Reviewed-on: https://chromium-review.googlesource.com/c/crashpad/crashpad/+/6718768
Reviewed-by: Mark Mentovai <mark@chromium.org>
GitOrigin-RevId: 576a639e00d7af4d8444ab32644c0d100f098a6c
diff --git a/doc/ios_overview_design.md b/doc/ios_overview_design.md
index 9ed01b7..3fca252 100644
--- a/doc/ios_overview_design.md
+++ b/doc/ios_overview_design.md
@@ -175,3 +175,17 @@
 clients start with uploading disabled. Applications should call this API when
 it is determined that it is appropriate to do so (such as on a few seconds after
 startup, or when network connectivity is appropriate).
+
+## tvOS considerations
+
+tvOS, an operating system based on iOS, shares the constraints described above
+and uses the same architecture. Additionally, tvOS does not allow the use of
+the `mach_msg()` APIs so using Mach exceptions is impossible.
+
+Consequently, the Mach exception handler is _not_ installed once the in-process
+handler is initialized; the tvOS handler only uses the POSIX signals and
+Objective-C exception preprocessors. Furthermore, the POSIX signal handler is
+unable to handle all crashes that the Mach exception handler can (e.g. stack
+overflows, as `sigaltstack()` cannot be used either). In other words, the tvOS
+in-process handler can only handle a subset of all exceptions that the iOS
+in-process handler does.