一锤定音:高通(Qualcomm)370亿美元收购NXP,成为全球第一大汽车芯片供应商

高通宣布以每股110美元的价格收购NXP半导体,总价约373亿美元。此举旨在拓展移动市场并增强竞争力。收购完成后,高通有望成为全球第四大半导体公司及最大汽车芯片供应商。

茱莉叶 

 

【阅读原文】


【最新爆料】:高通和荷兰芯片巨头NXP半导体公司已达成协议,移动芯片巨头高通以110美元每股收购NXP去年9月华尔街就报道过高通意欲收购NXP,当时传言收购价是300亿美元左右。


 

 

 

此次高通以每股110美元价格收购NXP,预估总价在373亿美元。NXP当前市值预估363.8亿美元。 合作起先提出的收购价格是120美元每股,但最终以110美元每股成交,下周双方将正式对外发布此次收购合作。

 

高通收购NXP半导体绝对是半导体产业最大的并购案。这次收购将是帮助高通开拓移动市场获得关键性胜利的举动。

 

 

  

2016年上半年半导体企业收入排名,高通第五,NXP10,收购完成后很可能超越Avago和博通这对CP,上升到第四位。业界很早就有传言称高通会收购NXP

 

高通独特的商业模式已成为他的掣肘,向手机制造商授权相关专利收取的专利费占了其营收大头。2016手机市场的下滑,势必会影响高通未来的增长空间。

 

过去科技产业常见的垂直分工态势,已在朝向垂直整合发展,闭合系统产业链将从中扮演主导角色。众多巨头厂商包括苹果、三星及华为等已开始打造自有芯片,高通的垄断时代也将逐渐落幕。

 

NXP半导体主要经营业务在汽车电子、射频和身份识别与安全方面,并颇有建树。NXP还是全球最大的汽车半导体公司、中国排名第一的ARM MCU供应商。特别是自20153月起,NXP和飞思卡尔(Freescale)合并后,新公司市值已经超过400亿美元。本次370亿美元的收购价格,某种程度上暗示了此次合并并不如理想成功。

 

高通和NXP两家公司的商业模式具有很强的互补性,此次并购将会大幅提升双方的盈利能力。高通收购完成后将拥有千亿美金市值;芯片产品由数十种增加到数百种之多;涉及行业将扩展到移动设备之外的许多行业。高通也将因此成为全球第一大汽车芯片供应商。

 

 

IT战略家】知乎号,公众号均已开通,欢迎关注讨论!

 

 

 

<think> 我们讨论的是CMake中命令行`-D`参数与CMake脚本中默认值的优先级问题。根据用户提供的引用和之前的讨论,我们知道: - `option`命令用于定义一个可配置的选项,它会将变量存入缓存(cache)中。 - 使用`cmake -D VAR=VALUE ...`可以在命令行中设置缓存变量的值。 - 缓存变量在CMake运行期间会持久化在`CMakeCache.txt`文件中。 关键点:**命令行`-D`参数设置的变量值优先级高于CMake脚本中通过`option`或`set`设置的默认值**。 原因如下: 1. **缓存机制**:当CMake第一次运行时,它会创建缓存(Cache)并保存变量值。后续运行会读取缓存。 2. **命令行参数`-D`会直接写入缓存**,并且如果缓存中已存在该变量,则覆盖它。 3. **在CMake脚本中**,当使用`option`或`set(... CACHE ...)`时,如果缓存中已经存在该变量,那么脚本中的默认值会被忽略(除非使用`FORCE`选项)。 具体流程: - 第一次配置(没有缓存): - 命令行使用`-D`:变量值由命令行指定,并写入缓存。 - 命令行未使用`-D`:变量值由CMake脚本中的默认值决定,并写入缓存。 - 后续配置(已有缓存): - 命令行使用`-D`:覆盖缓存中的值。 - 命令行未使用`-D`:使用缓存中的值(即上一次设置的值),脚本中的默认值被忽略。 注意:在CMake脚本中,如果使用普通的`set`(没有`CACHE`)设置变量,那么它不会进入缓存,而是作为普通变量。但是,如果缓存中已经存在同名变量,那么普通变量会被缓存变量的值覆盖(除非使用`PARENT_SCOPE`等特殊设置)。不过,对于`option`命令,它定义的是缓存变量。 举例说明: 假设我们有一个CMakeLists.txt文件,其中有一行: ```cmake option(ENABLE_FEATURE "Enable feature" OFF) ``` 情况1:第一次运行,没有缓存 - 命令行:`cmake ..` => 缓存中`ENABLE_FEATURE`的值为OFF(脚本中的默认值) - 命令行:`cmake -D ENABLE_FEATURE=ON ..` => 缓存中`ENABLE_FEATURE`的值为ON(命令行指定) 情况2:第二次运行,已经有缓存(上次运行后缓存中为ON) - 命令行:`cmake ..` => 即使脚本中默认值是OFF,但缓存中已有ON,所以实际值为ON(忽略脚本默认值) - 命令行:`cmake -D ENABLE_FEATURE=OFF ..` => 覆盖缓存中的值,变为OFF 因此,命令行`-D`参数优先级最高,其次是缓存中已有的值,最后才是脚本中的默认值。 引用用户提供的引用[4]中的内容,我们可以知道:CMake中如果缓存中已经定义了一个变量,那么再次使用`option`或`set(... CACHE ...)`时,如果没有使用`FORCE`,则不会覆盖缓存中的值。这也印证了缓存值的优先级高于脚本中的默认值。 另外,引用[1]中提到了`cmake -D`用于设置缓存入口,这直接说明了`-D`操作的是缓存变量。 所以,总结:**在CMake中,命令行通过`-D`传递的变量值会直接写入缓存,并且优先级高于CMake脚本中通过`option`或`set`设置的默认值。** </think> 在CMake中,命令行`-D`参数的优先级高于CMake脚本中的默认值,这是由CMake的**缓存机制**和**变量作用域规则**决定的。以下是详细解释: ### 优先级顺序 1. **命令行`-D`参数**(最高优先级) 2. **缓存变量**(CMakeCache.txt中的值) 3. **CMake脚本中的默认值**(最低优先级) ### 工作原理示意图 ```mermaid graph LR A[命令行 -D 参数] -->|直接写入缓存| C(CMakeCache.txt) B[CMake脚本默认值] -->|未设置时初始化| C C -->|运行时读取| D[实际生效值] ``` ### 具体机制 1. **缓存变量的持久性** `option()`定义的变量属于**缓存变量**,会持久存储在`CMakeCache.txt`中: ```cmake option(USE_OPENMP "启用OpenMP" OFF) # 默认OFF ``` 首次运行时生成缓存文件,后续运行优先读取缓存值[^4]。 2. **`-D`参数直接操作缓存** 命令行`-D`会直接覆盖缓存中的值: ```bash cmake -D USE_OPENMP=ON .. # 覆盖脚本中的OFF默认值 ``` 3. **运行时值确定流程**: ```cmermaid flowchart TD Start --> CheckCache{缓存是否存在?} CheckCache -->|是| ReadCache[读取缓存值] CheckCache -->|否| UseDefault[使用脚本默认值] ReadCache --> CheckCmd{有-D参数?} CheckCmd -->|是| Override[使用-D指定值] CheckCmd -->|否| KeepCache[保持缓存值] ``` ### 验证实验 CMakeLists.txt: ```cmake option(TEST_OPTION "测试选项" OFF) message("最终值: ${TEST_OPTION}") ``` 执行过程: ```bash # 首次运行(无缓存) cmake . # 输出: 最终值: OFF # 带-D参数运行 cmake -D TEST_OPTION=ON . # 输出: 最终值: ON # 再次无参数运行 cmake . # 输出: 最终值: ON(缓存已更新) ``` ### 特殊情况处理 当需要强制使用默认值时,可添加`FORCE`选项: ```cmake option(FORCE_OPTION "强制选项" OFF FORCE) ``` 此时`-D`参数对该变量无效(不推荐常规使用)。 > **关键记忆点**:CMake的缓存机制使`-D`参数成为"最后一锤定音"的设置方式,类似C语言中命令行参数覆盖配置文件默认值的行为[^1][^4]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值