事件背景:

  2019年3月10日,埃塞俄比亚航空公司一架波音737MAX8飞机发生坠机,机上157人全部遇难,包括8名中国公民。这是继去年10月29日印尼狮航空难事故之后,波音737MAX8飞机在五个月内发生的第2起空难。

  事发后,全球各国相继停飞了波音737MAX8系列飞机。

  

问题所在:

  埃航的坠毁事件其实和737采用的软件系统脱不了干系,如今737使用的新飞行控制系统是波音737MAX的机动特性增强系统,是一种波音737MAX的操纵辅助系统。据报道称,2018年10月29日的印尼狮航JT610空难就是由于飞机迎角传感器故障,导致波音737MAX8上新安装的自动防失速系统MCAS认为飞机有失速危险而自动压低机头俯冲以获得空速。

  而该系统优先级很高,人工操作时也会启动,人工无法取消防失速系统的动作。导致JT610航班机长一直在与自动下压机头的防失速系统搏斗,最终飞机不幸坠毁。  

  737软件系统工程师的一个错误理念:让机器代替人工作。

  从道理上来讲,飞机驾驶员的存在意义就是在飞机出现不可控的情况下进行人工干预,进行应急处理。但是737这个系统里,设计时就本着人可能会反应比较慢,让机器代替人进行调整的原则,因此在飞机飞行时出现俯冲的情况下,驾驶员人工将机头拉起,以缓解俯冲,但是系统又自动调整向下。

  根本原因就是:系统自动调整的优先级高于了人工干预。

  在这个问题上不禁有一些疑惑,既然设计成系统高于人工的软件,那还要驾驶员干什么?

  这种设计理念细想起来是有一些道理的,人的反应速度确实无法和机器相比,但是缺陷就在于他们没有考虑到,如今的人工智能和系统判断能力还达不到人的思维高度,他们无法兼顾所有意外情况的发生,所以盲目的让机器来决定,这就是错误的。

  总归有一点,在如今的AI条件下,软件系统依旧只能是为人服务,并不能代替人类,让系统优先于人,后果将是难以承受的。

埃航和737MAX坠毁:软件优先级问题的更多相关文章

  1. SysTick系统定时器(功能框图和优先级配置)

    SysTick—系统定时器是属于 CM3 内核中的一个外设,内嵌在 NVIC 中.系统定时器是一个 24bit (2^24)的向下递减的计数器,计数器每计数一次的时间为 1/SYSCLK,一般我们设置 ...

  2. 记STM32F030多通道ADC DMA读取乱序问题

    问题描述通过 uint16_t ConvData[8]保存DMA搬运的ADC转换数值,但是这个数组数值的顺序总是和ADC不是顺序对应的.比如用7个通道的ADC,当设置ADC_InitStructure ...

  3. FreeRTOS随记

    任务函数原型: void ATaskFunction(void * pvParameters); 任务不允许从实现函数中返回.如果一个任务不再需要,可以用vTaskDelete()删除; 一个任务函数 ...

  4. STM8的中断系统以及外部中断详解

    STM8具有最多32的中断系统,在中断的处理上类似于cortexm系列的芯片,首先是每个中断的向量都是固化在系统内部的,用户需要向相应的中断向量flash位置写入中断处理函数,其二,每个中断向量都具有 ...

  5. LPC2478中断控制器以及串口详解

    LPC2478的中断系统 LPC2478使用的是ARM PrimeCell向量中断控制器,一共支持32个中断向量,处于AHB空间便于系统快速访问,在中断向量的硬件优先级上还有一层可以用户自己设计的软件 ...

  6. 嵌入式单片机STM32应用技术(课本)

    目录SAIU R20 1 6 第1页第1 章. 初识STM32..................................................................... ...

  7. freeRTOS中文实用教程3--中断管理之中断嵌套

    1.前言 最新的 FreeRTOS 移植中允许中断嵌套.中断嵌套需要在 FreeRTOSConfig.h 中设置configKERNEL_INTERRUPT_PRIORITY 和configMAX_S ...

  8. STM32F103X datasheet学习笔记---DMA

    1.前言 直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输. 无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作. 两个DMA控制器 ...

  9. 第18章 SysTick—系统定时器

    第18章     SysTick—系统定时器 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/ ...

随机推荐

  1. java之servlet学习基础(二)

    上一次写到Servlet的实现方法,主要还是通过继承HttpServlet来实现Servlet.下面主要是回顾一下HttpServletRequest和HttpServletResponse对象中的一 ...

  2. MAC使用超级终端

    其实很简单. 先用ls看看/dev/tty.*哪个是具体的串口,我这里使用的edison的板子,所以插到macos上后可以看到的设备节点为: 只需要使用screen 命令即可,具体的命令格式如下: s ...

  3. jmeter手写脚本,使用正则获取cookie(禁用cookies管理器)

    注:这里以bugfree为例 1.bugfree登录时会有重定向,这会导致每个URL都会有.因此要手动获取cookie的时候,需要去掉重定向勾选 正则获取动态PHPsession 获取到值后,放到信息 ...

  4. win7系统 LR11 安装与破解

    注意一定要以管理员身份运行启动LR程序 Loadrunner11 安装: 1.运行“setup.exe” 2. 点击安装,其中会有提示缺少“Microsoft Visual C++ 2005 SP1等 ...

  5. rds

    数据库:提供数据的高可用保证,至少要用双节点(一主已备,经典高可用架构:采用基于binlog的数据复制技术维护数据库的可用性和数据一致性.同时,高可用版的性能也可以满足业务生产环境的需求,配置上采用物 ...

  6. C#替换文件中特定字符串,按照原来的编码格式保存

    private void button1_Click(object sender, EventArgs e) { var txt1 = "E:\\Temp\\local"; str ...

  7. PM学习梳理--搭建产品架构

  8. elasticdump 方法迁移数据

    elasticdump -rm -ti taskrabbit/elasticsearch-dump --ignore-errors=true --offset=1000  --input=http:/ ...

  9. HDU-6153 A Secret 扩展KMP

    题意:求一个字符串的所有后缀在母串中的出现次数*后缀的长度的总和. 题目链接:http://acm.split.hdu.edu.cn/viewcode.php?rid=22147273 思路:先预处理 ...

  10. 团队-爬虫豆瓣top250项目-模块测试过程

    模块测试: 项目托管平台地址:https://github.com/gengwenhao/GetTop250.git 模块测试:"获取250排名的全部电影信息"功能,测试方法:手动 ...