信创适配评测
概叙
信创科普参考:全面国产化之路-信创-CSDN博客
有必要再解释一下两个名词“2+8+N”,“79号文件”,因为“2+8+N”指定了由政府牵头从各领域开启国产化的基调,而“79号文件”则指定了国产化的截止日期2027年。
信创的本质是实现中国信息化产业的自主可控,全面保障我国网络安全和信息安全。
2+8+N
2018年,中兴、华为被制裁,美方加大对中国进出口限制。2019年我国提出发展信创产业,随后出台了一系列支持政策(2+8+N,2即党+政,信创从党政开始,预计到2023年完成基本公文系统的信创改造,实现电子政务系统的国产化;8即关系到国计民生的金融,电信,电力,石油,交通,航空航天,医院,教育等8大行业也要逐步完成信创改造,其中重点推进的行业是金融;N指汽车、物流、烟草、电子、建筑等其他行业),加速推进自主研发应用试点并扩大范围,信创产业招投标大幅增加,信创产业从"试点实践”进入“规模化推广阶段”。2020年,央行成立金融信创生态实验室,第一批“金融信创解决方案”出现,所以2020年这一年也被公认为信创产业规模化的应用实践元年。
经历了2019年到2021年的发展,信创生态在党政公文传输和网上办公领域的国产化升级已基本完成,且满足使用需求。从2022年起信创工程的重点从党政转向重点行业,从省市下沉到区县,2023年央国企行业信创全面铺开,将对信创生态和厂商综合实力带来巨大挑战。
一方面,以党政信创为例,下沉的规划已经明确,但具体如何下沉、如何打样、先行者探索出了何种经验、是否可复制、各地区是否需要结合区域实际界定工作完善的标准,可以说仍然任重道远。此外,下沉市场的用户还存在对国产化建设的技术认知度不足,顶层规划、互联互通的思维相对较弱,软硬件基础设施配置水平相对滞后,对产品价格较为敏感,对本地化服务要求较高等问题。
另一方面,关基行业的国产化升级涉及网信基础设施、生产运营系统、经营管理系统等,且存在大量自研应用,对软硬件产品的实时性、稳定性、兼容性、可靠性等各种性能要求极高。当前,整机厂家在扮演“项目经理”的角色,牵起使用者和操作系统企业进行适配,但由于国产信创软硬件产品在关基行业的垂直应用生态处于起步阶段,难以实现行业信创核心系统的真替真用。
因此,进入行业信创“深水区”,厂商能否聚焦资源为用户提供好的生态体验将变得至关重要,基于“核心技术自主+生态全面开放”强强联合的链条生态整合可成为破局之策。
79号文件
2022年9月底国资委下发79号文,全面指导并要求国央企落实信息化系统的信创国产化改造。这也意味着,自2023年开始,信创产业将从“关键环节、部分市场”走向“全产业链、全行业”的信息技术升级,全面构建国产自主的IT标准与服务生态。
79号文的核心内容归纳如下:
1、全面替换(央企信创OA、门户、邮箱、纪检、党建、档案管理)
2、应替就替(战略决策、ERP、风控管理、CRM经营管理系统)
3、能替就替(生产制造、研发系统)
4、2027年100%完成
信创适配
“信创”是“新一代信息技术应用创新”的简称;
“信创适配”是要求从核心芯片协议到匹配基础硬件、操作系统、数据库、中间件、服务器以及应用软件都要通过测试和验证,以确保软件或系统在不同环境中的正确运行,提高产品的可移植性,使其能够适应不同的硬件和软件配置。
“信创适配测试”则是为了保障达到这一目的而进行的相关测试。指在信创环境下,对软硬件产品和应用系统的功能、性能、安全性等进行全面的验证,以确保其能够在信创环境下正常运行,满足用户的需求和期望的测试活动。
信创软件适配测试可以建立一种质量保障,确保信创软件通过信创适配测试,尽早发现系统的缺陷并确保其得到正确修复,降低信息化风险,让国产化能按预期的要求运行。
为推动信创产业生态丰富,将以CPU和操作系统为核心,为企业开展3个层级的信创适配工作。
一、硬件适配
硬件适配以整机为核心,围绕部件厂商、 CPU厂商和外设厂商,开展部件级产品、外设产品和整机产品的适配工作。
l 部件产品集成,涉及主板设计、元器件选材、焊接组成等。
l 硬件产品接口驱动适配、驱动界面适配。
l 硬件配置参数调优,从而获得使设备性能最佳的解决方案。
二、基础软件适配
基础软件适配以操作系统为核心,围绕基础软件厂商,开展基础软件产品和基础软件平台的适配工作。
l 环境变量调试:配置相应环境变量,保障软件正常运行。
l 兼容性调试: 配置相应环境变量,保障软件正常运行。
l 策略调试: 数据库与中间件同时运行,调整各自配置,满足不同调度策略。
三、应用软件适配
应用软件适配以操作系统为核心,围绕应用软件厂商,开展各类应用软件的适配工作。
l 开发环境设置:安装配置应用软件开发所需环境,配置相应环境变量。
l 兼容性调试:在不同浏览器、不同分辨率和不同带宽环境下调试。
l 策略调试:数据库与中间件同时运行,调整各自配置,满足不同调度策略。
l 界面适配:软件界面与GC平台图形图像组件的适配。
应用软件适配以操作系统为核心,围绕应用软件厂商,开展各类应用软件的适配工作。
信创适配评测
信创适配性测试是实现信息技术应用创新的关键环节之一。
通过科学合理的适配性测试,可以确保信创产品的质量和性能达到用户需求,降低产品上市后的风险。适配性测试还能为产品的优化和升级提供依据和指导,推动信息技术应用创新的发展。
信创适配评测步骤
信创测试是一种系统化的方法,旨在评估和验证创意和创新项目的潜力和可行性。进行信创测试可以帮助企业在投入大量资源之前,对创意进行客观、科学的评估,以减少失败的风险并最大化成功的可能性。
以下是一般性的信创测试步骤:
确定测试环境:确定测试应用程序所运行的硬件平台、操作系统和软件环境的版本等信息。
制定测试方案:根据需求和特点,制定出适配测试的测试方案,确定测试方法和测试工具。
进行单元测试:测试应用程序的各个模块和功能在该硬件平台上是否正常运行。
进行集成测试:测试应用程序在该硬件平台上和其他应用程序的兼容性,是否会产生冲突或者错误等问题。
执行性能测试:测试应用程序在该硬件平台上的性能表现,包括响应速度、数据传输速率等,并与指标进行比对。
进行安全测试:测试应用程序在该硬件平台上的安全性表现,包括身份认证、数据加密、安全传输等方面。
汇总测试结果:根据测试方案进行测试,并整理出测试结论,输出测试报告。
此外,随着技术的发展,信创测试也在不断演进。例如,基于云的测试正成为一种新的趋势,它使用基于云的基础设施来运行测试和测试环境,提高了测试程序的效率。
请注意,具体的信创测试步骤和方法可能因项目的不同而有所差异。在进行信创测试时,应充分考虑项目的特点和需求,选择适当的测试方法和工具,确保测试的准确性和有效性。同时,也可以参考行业标准和最佳实践,以提高测试的质量和效率。
信创评测机构一般都是国家指定的机构,信创评测完成后会有“信创产品评估证书”。
信创评测机构
说明:具体机构以国家文件为准,下面只是网上收集整理。
1.国字头评测机构
2.地方评测机构
2022年信创企业名单
工业和信息化部关于公布2022年国家技术创新示范企业名单的通知_国务院部门文件_中国政府网
相关文章:
信创适配评测
概叙 信创科普参考:全面国产化之路-信创-CSDN博客 有必要再解释一下两个名词“28N”,“79号文件”,因为“28N”指定了由政府牵头从各领域开启国产化的基调,而“79号文件”则指定了国产化的截止日期2027年。 信创的本质是实现中国信…...
【Qt6.3 基础教程 04】探索Qt项目结构和配置文件
文章目录 前言Qt项目的基本结构配置文件:.pro文件基本构成示例.pro文件: qmake和构建过程步骤简述: 修改项目设置结论 前言 当你开始使用Qt进行开发时,理解项目结构和配置文件的作用是至关重要的。这篇博文将带你深入了解Qt项目的…...
SpringBoot测试实践
测试按照粒度可分为3层: 单元测试:单元测试(Unit Testing)又称为模块测试 ,是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中…...
Flask-OAuthlib
Flask-OAuthlib库教程 Flask-OAuthlib 是一个为 Flask 应用提供 OAuth1 和 OAuth2 支持的库。它允许开发者轻松地集成第三方 OAuth 服务,或者构建自己的 OAuth 提供者服务。 官方文档链接 Flask-OAuthlib官方文档 架构概述 Flask-OAuthlib 的主要组件包括&…...
树和森林.
目录 一、树 1.1树的存储结构 1.1.1双亲表示法 1.1.2孩子链表 1.1.3孩子兄弟表示法 1.2树与二叉树的转换 1.2.1将树转换成二叉树: 1.2.2将二叉树转换成树 二、森林 2.1森林与二叉树的转换 2.1.1将森林转换成二叉树 2.1.2二叉树转换成森林 三、树和森林的…...
ubuntu下同时安装和使用不同版本的库 librealsense
apt 安装的最新版本在/usr 源码安装的旧版本在/usr/local set(realsense2_DIR /usr/local/) find_package(realsense2 2.50.0 REQUIRED) message( "\n\n ${realsense2_INCLUDE_DIR} ${realsense2_VERSION} RealSense SDK 2.0 is FINDINGING, please install it from…...
openEuler操作系统下静默安装Oracle19c
在openEuler-23.09上安装Oracle19c,创建非容器数据库实例(含静默安装) 操作系统版本 openEuler-23.09-x86_64-dvd.iso ,安装步骤此处省略。。。 最常用且直接的方法来查看openEuler的版本号是查看/etc/os-release文件 [root@openEuler ~]$ cat /etc/os-release NAME="…...
Linux CPU常见命令行详解
在Linux系统中,命令行是管理和监控系统资源的重要工具。特别是当我们需要了解CPU的状态、性能和利用率时,一系列命令行工具就显得尤为重要。本文将详细介绍Linux中与CPU相关的常见命令行工具及其使用方法,帮助大家更好地理解和利用这些工具来…...
防止更新或保存 Laravel 模型
例如,创建模型后,我不希望任何人能够再次更新该记录。相反,它应该被全新的记录覆盖并存档。 这是一个简单的特征,您可以在模型上使用它来禁用更新: trait PreventsUpdating {public static function bootPreventsUpd…...
Cadence:Conformal系列形式验证工具
Conformal 工具最早由Verplex Systems开发。Verplex是一家专注于形式验证工具开发的公司,其核心产品是Conformal等效性检查工具。由于其技术的先进性和市场需求,Verplex的 Conformal工具迅速在半导体行业内获得了认可。 2003 年,Cadence Desi…...
一般人不要学Python?一般人怎么学Python!!
关于“建议一般人真的不要学Python”这一观点,我认为这是一个过于绝对的说法。实际上,Python作为一种流行的编程语言,具有许多优点,适合不同背景和需求的人学习。以下是一些反驳这一观点的理由: 易于学习和理解&#x…...
微服务架构中间件安装部署
微服务架构中间件安装部署 jdk安装 安装包jdk-8u144-linux-x64.tar.gz 先检查系统原版本的jdk并卸载 rpm -qa | grep java 显示信息如下: tzdata-java-2014g-1.el6.noarch java-1.6.0-openjdk-1.6.0.0-11.1.13.4.el6.x86_64 java-1.7.0-openjdk-1.7.0.65-2.5.1.2.…...
车辆数据的提取、定位和融合(其一 共十二篇)
第一篇: System Introduction 第二篇:State of the Art 第三篇:localization 第四篇:Submapping and temporal weighting 第五篇:Mapping of Point-shaped landmark data 第六篇:Clustering of landma…...
Vue3组件通信全解析:利用props、emit、provide/inject跨层级传递数据,expose与ref实现父子组件方法调用
文章目录 一、父组件数据传递N个层级的子组件vue3 provide 与 injectA组件名称 app.vueB组件名称 provideB.vueC组件名称 provideCSetup.vue 二、使用v-model指令实现父子组件的双向绑定父组件名称 app.vue子组件名称 v-modelSetup.vue 三、父组件props向子组件传值子组件 prop…...
华为---OSPF被动接口配置(四)
9.4 OSPF被动接口配置 9.4.1 原理概述 OSPF被动接口也称抑制接口,成为被动接口后,将不会接收和发送OSPF报文。如果要使OSPF路由信息不被某一网络中的路由器获得且使本地路由器不接收网络中其他路由器发布的路由更新信息,即已运行在OSPF协议…...
前端将Markdown文本转换为富文本显示/编辑,并保存为word文件
参考:https://www.wangeditor.com/ https://blog.csdn.net/weixin_43797577/article/details/138854324 插件: markdown-it traptitech/markdown-it-katex markdown-it-link-attributes highlight.js wangeditor/editor wangeditor/editor-for-vue html…...
git-shortlog详解
作用 git-shortlog - Summarize git log output 语法 git shortlog [<options>] [<revision-range>] [[--] <path>…] git log --prettyshort | git shortlog [<options>] 功能描述 Summarizes git log output in a format suitable for inclus…...
通过MATLAB实现PID控制器,积分分离控制器以及滑模控制器
目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 通过MATLAB实现PID控制器,积分分离控制器以及滑模控制器。通过对比三个算法可知,采用滑模控制算法,其具有最快的收敛性能,较强的鲁棒性&…...
Node.js 渲染三维模型并导出为图片
Node.js 渲染三维模型并导出为图片 1. 前言 本文将介绍如何在 Node.js 中使用 Three.js 进行 3D 模型渲染。通过结合 gl 和 canvas 这两个主要依赖库,我们能够在服务器端实现高效的 3D 渲染。这个方法解决了在服务器端生成和处理 3D 图形的需求,使得可…...
Win11下安装VS2022失败的解决办法
前几天我把我的HP Z840的操作系统换成了Win11,在重装VS2022时遇到了麻烦,提示无法安装 Microsoft.VisualStudio.Devenv.Msi。 查看安装日志提示:Could not write value devenv.exe to key \SOFTWARE\Microsoft\Internet Explorer\Main\Featur…...
动态规划:基本概念
Dynamic Programming 动态规划(Dynamic Programming, DP) 是一种算法设计技巧,通常用来解决具有重叠子问题和最优子结构性质的问题。它通过将问题分解为更小的子问题,逐步解决这些子问题并将结果存储起来,以避免重复计…...
小山菌_代码随想录算法训练营第二十九天| 455. 分发饼干 、376. 摆动序列、53. 最大子序和
455. 分发饼干 文档讲解:代码随想录.分发饼干 视频讲解:贪心算法,你想先喂哪个小孩?| LeetCode:455.分发饼干 状态:已完成 代码实现 class Solution { public:int findContentChildren(vector<int>&…...
快手可灵大模型开放视频续写功能,可生成最长约3分钟视频
6月21日,可灵再度进化,正式推出图生视频功能,支持用任意静态图像生成5s视频,并且可搭配不同的文本内容,实现丰富的视觉叙事 。 同时,可灵还发布了业内领先的视频续写功能,可为已生成的视频&…...
【代码随想录】【算法训练营】【第45天】 [198]打家劫舍 [213]打家劫舍II [337]打家劫舍III
前言 思路及算法思维,指路 代码随想录。 题目来自 LeetCode。 day 45,周五,坚持不了一点~ 题目详情 [198] 打家劫舍 题目描述 198 打家劫舍 解题思路 前提: 思路: 重点: 代码实现 C语言 虚拟头…...
python安装目录文件说明----Dlls文件夹
在Python的安装目录下,通常会有一个DLLs文件夹,它是Python标准库的一部分。这个文件夹包含了一些动态链接库(Dynamic Link Libraries,DLL),这些库提供了Python解释器和标准库的一些关键功能。以下是对这个文…...
java实现持续集成
要使用Java实现Jenkins持续集成,你可以使用Jenkins的Java客户端库来执行一些常见的操作,例如创建任务,触发构建等。下面是一个简单的示例代码,展示了如何使用Java实现Jenkins持续集成: java import com.offbytwo.jenk…...
ClickHouse安装与下载22.3.2.2
ClickHouse安装与下载 目录 1. ClickHouse简介 1.1 ClickHouse优点: 1.2 ClickHouse缺点: 1.3 ClickHouse引擎: 1.3.1 数据库引擎 1.3.2 表引擎 2. ClickHouse下载安装 2.1 ClickHouse下载安装 2.2 ClickHouse使用 1. ClickHouse简…...
【Go语言】Gin 框架教程
Gin 框架教程 1.第一个 Gin 程序 1.1 Gin 安装 # 执行执行如下操作即可,安装Gin前需要安装Go环境 go get -u -v github.com/gin-gonic/gin # -v:打印出被构建的代码包的名字 # -u:已存在相关的代码包,强行更新代码包及其依赖包…...
MySQL性能问题诊断方法和常用工具
作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG数据库运维(如安装迁移,性能优化、故障应急处理等) 公众号:老苏畅谈运维 欢迎关注本人公众号,更多精彩与您分享。MySQL运…...
CGFloat转NSString保持原有的精度,末尾不添加0
问题阐述: 我们进行CGFloat转NSString可能会遇到一个问题 例如有一个CGFloat的值为2.1,转化成NSString后显示2.1000... 解决办法: 方法一: 如何解决呢,可以使用%g格式符,可以保证传入的不管是2还是2.1…...
UDS服务——TransferData (0x36)
诊断协议那些事儿 诊断协议那些事儿专栏系列文章,本文介绍TransferData (0x36)—— 数据传输,用于下载/上传数据时用的,数据的传输方向由不同的服务控制:0x34服务表示下载,0x35服务表示上传。通过阅读本文,希望能对你有所帮助。 文章目录 诊断协议那些事儿传输数据服务…...
jQuery 基本操作
01-简介 jQuery 是一个功能丰富且广泛使用的 JavaScript 库,它简化了 HTML 文档遍历和操作、事件处理、动画和 Ajax 操作。jQuery 通过其易用的 API,使复杂的 JavaScript 编程任务变得更加简单,并且兼容各种浏览器。 1、jQuery特点 简化 DOM …...
有玩家在2011年的MacBook上成功运行了Windows XP 还安装了触摸屏
我们已经在许多不同的设备上看到过 Windows XP 正在运行。这个古老的操作系统于 2001 年正式推出,现在已经老到其最后一次软件更新是在近十年前。一位好奇的玩家试图在 2011 年的触摸屏 MacBook 上为 Windows XP 打造了一个新家,复古技术探索者 Michael …...
高纯PFA容量瓶PFA试剂瓶在半导体材料的应用
在半导体生产过程中,为避免金属污染对硅器件性能造成不利影响,碳化硅产业链不同阶段产品(如衬底、外延、芯片、器件)表面的痕量杂质元素浓度表征至关重要。 在实验人员使用质谱法高精度检测第三代半导体碳化硅材料的痕量杂质浓度…...
AudioSep:从音频中分离出特定声音(人声、笑声、噪音、乐器等)本地一键整合包下载
AudioSep是一种 AI 模型,可以使用自然语言查询进行声音分离。这一创新性的模型由Audio-AGI开发,使用户能够通过简单的语言描述来分离各种声音源。 比如在嘈杂的人流车流中说话的录音中,可以分别提取干净的人声说话声音和嘈杂的人流车流噪声。…...
Prompt 提示词工程:翻译提示
近期在对计算机学习时,许多内容需要看原始的英文论文,对于我这种学渣来说特别不友好,🤷🏻♀️无奈只能一边看翻译,一边学习。 之前有搜到过专门的翻译工具,无奈都是按照字数算费用的…...
【MySQL 的三大日志的作用】
在管理MySQL数据库时,了解和区分数据库使用的三大日志类型至关重要。这些日志对于确保数据的完整性、提供恢复机制以及维持数据库的稳定性发挥着关键作用。最主要还是小豆前段时间去参加面试被问到了这些内容,下面将详细讨论Redo Log、Binlog和Undo Log的…...
数据库中数据的id生成和算法
id生成策略 自增主键 一般使用整数类型的id可使用自增主键的策略去生成id 优点: 简单、易于使用和理解。保证唯一性,无需额外的查询操作。提高查询性能,因为ID是有序的,且支持索引。 缺点: 不适用于分布式系统&a…...
SystemVerilog Assertion精华知识
前言 断言主要用于验证设计的行为。断言也可用于提供功能覆盖率,并标记用于验证的输入激励不符合假定的需求。 在验证平台中,通常进行三个主要任务: 产生激励功能检查功能覆盖率度量 在当今的设计越来越复杂情况下,像波形调试…...
pdf怎么压缩到2m以内或5m以内的方法
PDF作为一种广泛使用的文档格式,已经成为我们工作和生活中不可或缺的一部分。然而,有时候PDF文件内存会比较大,给我们的存储和传输带来了很大的不便。因此,学会压缩 PDF 文件是非常必要的。 打开"轻云处理pdf官网"&…...
Butter Knife 8
// 部分代码省略… Override public View getView(int position, View view, ViewGroup parent) { ViewHolder holder; if (view ! null) { holder (ViewHolder) view.getTag(); } else { view inflater.inflate(R.layout.testlayout, parent, false); holder new ViewHolde…...
AMSR/ADEOS-II L1A Raw Observation Counts V003地球表面和大气微波辐射的详细观测数据
AMSR/ADEOS-II L1A Raw Observation Counts V003 简介 AMSR/ADEOS-II L1A Raw Observation Counts V003数据是由日本航空航天研究开发机构(JAXA)的AMSR (Advanced Microwave Scanning Radiometer)仪器收集的一组原始观测计数数据。这些数据是从ADEOS-I…...
MySQL之复制(十一)
复制 复制的问题和解决方案 数据损坏或丢失的错误 当一个二进制日志损坏时,能恢复多少数据取决于损坏的类型,有几种比较常见的类型: 1.数据改变,但事件仍是有效的SQL 不幸的是,MySQL甚至无法察觉这种损坏。因此最好还是经常检查…...
深入源码设计!Vue3.js核心API——Computed实现原理
如果您觉得这篇文章有帮助的话!给个点赞和评论支持下吧,感谢~ 作者:前端小王hs 阿里云社区博客专家/清华大学出版社签约作者/csdn百万访问前端博主/B站千粉前端up主 此篇文章是博主于2022年学习《Vue.js设计与实现》时的笔记整理而来 书籍&a…...
驾考小技巧:老北京布鞋!距离高考出分还剩3天,我却看到有些孩子已经拿了“满分”——早读(逆天打工人爬取热门微信文章解读)
我20年驾校4000多块钱,你呢? 引言Python 代码第一篇 洞见 距离高考出分还剩3天,我却看到有些孩子已经拿了“满分”第二篇 视频新闻结尾 引言 昨天的文章顺利发出 看来“梅西” 这两个字在我们这边 不是敏感词 只是很多个罗粉搞得有点过头了 …...
java-正则表达式 2
7. 复杂的正则表达式示例(续) 7.1 验证日期格式 以下正则表达式用于验证日期格式,例如YYYY-MM-DD。 import java.util.regex.*;public class RegexExample {public static void main(String[] args) {String[] dates {"2023-01-01&q…...
hadoop常见简单基础面试题
文章目录 hadoop简单基础面试题1. 请说下 HDFS 读写流程2. HDFS 在读取文件的时候,如果其中一个块突然损坏了怎么办3. HDFS 在上传文件的时候,如果其中一个 DataNode 突然挂掉了怎么办4. NameNode 在启动的时候会做哪些操作5.Secondary NameNode 了解吗&…...
泄漏检测(LDAR)在建档和检测过程中造假套路和不规范行为
第一章 建档环节造假和不规范 一、 企业行为: 企业为了节约检测费,采取部分建档,部分密封点检测的行为 二、 第三方检测公司不规范行为: 1、台账信息不准确,密封点命名不准确 &…...
Android CTS环境搭建
CTS即Compatibility Test Suite意为兼容性测试,是Google推出的Android平台兼容性测试机制。其目的是尽早发现不兼容性,并确保软件在整个开发过程中保持兼容性。只有通过CTS认证的设备才能合法的安装并使用Google market等Google应用。 搭建CTS测试环境需…...
比较Zig、Rust和C++
比较Zig、Rust和C这三种编程语言,我们可以从以下几个关键维度来进行: 设计理念 表格 语言 设计理念 Zig 简洁性、模块化、避免常见错误 Rust 内存安全、并发性、性能 C 性能优化、资源控制、可扩展性 内存安全 Zig通过严格的编译时检查、可选…...