医疗级嵌入式软件安全与可靠性设计
📘 30章 · 完整目录
v2.4
01
医疗软件安全概述
IEC 62304
FDA指南
安全关键系统
课程目标
02
嵌入式系统基础回顾
ARM Cortex-M
FreeRTOS vs ThreadX
外设驱动安全
03
IEC 62304标准精讲
安全等级A/B/C
开发流程
追溯性管理
04
风险管理 (ISO 14971)
FMEA/FTA
风险控制
残余风险接受
05
安全需求分析
系统需求导出
规格编写
需求验证
06
软件架构设计
分层架构 HAL/OS/App
模块化
安全隔离
07
编码规范与静态分析
MISRA C/C++
PC-Lint / Coverity
代码审查
08
内存安全
MPU/MMU防护
动态内存风险
内存池管理
09
并发与竞态条件
优先级反转
互斥锁/信号量
看门狗心跳
10
输入验证与边界检查
传感器校验
通信协议解析
防御性编程
11
安全通信协议
TLS/DTLS
CAN SecOC
MQTT安全
12
固件安全更新
Secure Boot
签名加密
回滚保护
13
故障注入与容错设计
硬件故障注入
N版本编程
错误处理框架
14
实时性保障
RMS/EDF调度
WCET估算
中断延迟控制
15
软件测试策略
单元测试 CUnit/Unity
集成测试
系统/回归测试
16
白盒测试技术
语句/分支/MC/DC
gcov
BullseyeCoverage
17
黑盒测试与边界值分析
等价类划分
边界值测试
状态转换测试
18
硬件在环测试 (HIL)
HIL平台搭建
实时仿真
故障注入自动化
19
认证文档编写
安全文档清单
设计规范模板
测试报告要点
20
软件配置管理
Git Flow
CMake构建
CCB流程
21
第三方组件管理
开源许可证
Black Duck扫描
供应链安全
22
隐私保护与数据安全
AES-256加密
匿名化
GDPR/HIPAA
23
人因工程与用户安全
防误操作UI
报警可靠性
使用错误分析
24
CI/CD 持续集成/部署
Jenkins/GitLab CI
自动化测试
构建签名
25
FPGA安全
位流加密
防篡改
MCU协同安全
26
无线连接安全
BLE安全配对
WPA3-Enterprise
Zigbee安全
27
软件老化与退化模式
内存泄漏检测
堆碎片管理
优雅降级
28
安全事件响应
日志审计
异常检测
远程诊断恢复
29
案例研究:胰岛素泵安全设计
需求分析
架构设计
测试认证复盘
30
未来趋势与总结
AI安全应用
形式化验证
认证路径建议