The specification, design, and assurance of safety encompasses various concepts and best practices, subject of reuse in form of patterns. This work summarizes applied research on such concepts and practices with a focus on the last two decades and on the state-of-the-art of patterns in safety-critical system design and assurance argumentation. We investigate several aspects of such patterns, for example, where and when they are applied, their characteristics and purposes, and how they are related. For each aspect, we provide an overview of relevant studies and synthesize a taxonomy of first principles underlying these patterns. Furthermore, we comment on how these studies address known challenges and we discuss suggestions for further research. Our findings disclose a lack of research on how patterns improve system safety claims and, vice versa, on the decomposition of system safety into separated local concerns, and on the impact of security on safety. CCS Concepts: • General and reference → Design; Reliability; • Computer systems organization → Architectures; Dependable and fault-tolerant systems and networks; • Hardware → Safety critical systems; • Software and its engineering → Software safety; Error handling and recovery; Software verification and validation; Risk management; • Security and privacy → Security in hardware.