系统架构设计师(一):计算机系统基础知识
系统架构设计师(一):计算机系统基础知识
- 引言
- 计算机系统概述
- 计算机硬件
- 处理器
- 处理器指令集
- 常见处理器
- 存储器
- 总线
- 总线性能指标
- 总线分类
- 按照总线在计算机中所处的位置划分
- 按照连接方式分类
- 按照功能分类
- 接口
- 接口分类
- 计算机软件
- 文件系统
- 文件类型
- 文件结构
- 文件的逻辑结构
- 文件的物理结构
- 文件存取方法
- 文件存储空间的管理方法
- 位示图计算题
- 文件共享
- 文件保护
- 中间件
- 中间件分类
- 软件构件
- 软件构件的组装模型
- 商用构件的标准规范
引言
本文对应《系统架构设计师教程》(以下简称官方教材)第二章部分章节内容。官方教材中,第二章作为核心知识章节,全面涵盖了计算机硬件、软件、操作系统、嵌入式系统等多领域基础内容。然而,从历年考试命题趋势来看,操作系统、嵌入式系统、计算机网络及系统性能模块是考查的重点,其考察内容远远超过官方教材中罗列的知识点,后续我们将对这些高频考点进行专项深度解析。为避免知识庞杂导致学习负担过重,本文将聚焦计算机硬件、计算机软件两大基础板块,帮助大家夯实根基,为后续的重点突破做好铺垫。
计算机系统概述
计算机系统是指用于数据管理的计算机硬件、 软件及网络组成的系统。它是按人的要求接收和存储信息,自动进行数据处理和计算, 并输出结果信息的机器系统。典型计算机系统的组成结构如下图所示:
从上图可以看出,典型计算机系统的组成主要分为硬件和软件两大模块。
计算机硬件
计算机硬件源于传统冯·诺依曼计算机结构,包含五大构件:运算器、控制器、存储器、输入设备和输出设备。
- 运算器和控制器是中央处理器(CPU)的核心处理部件。
- 存储器分为内存和外存。内存一般以GB为单位,其特点是断电数据易丢失,无法持久化保持,但是速度快,效率高。外存通常指硬盘,一般以GB或TB为单位,其特点是容量大,速度慢,数据可以持久化保存。
- 输入设备和输出设备统称为I/O设备(Input/Output)。
处理器
处理器指令集
处理器指令集包括复杂指令集(CISC)和精简指令集(RISC),两者对比如下所示:
维度 | CISC | RISC |
---|---|---|
指令数量 | 指令多,通常 >200 条(如 x86 有上千条指令) | 指令少,通常 <100 条(如 ARM 有 64 条核心指令) |
指令长度 | 不固定长(1-15 字节) | 长度相对固定(通常 4 字节) |
执行周期 | 多周期,1-20 个周期不等 | 单周期指令,大多 1 个周期内 |
实现方式 | 微程序控制 | 硬布线逻辑 |
执行效率 | 效率低 | 效率高 |
典型应用 | Intel系列(如 i5/i7/i9)、AMD Ryzen 系列(如 x86) | ARM、POWER |
常见处理器
- 图形处理器GPU:一种特殊类型的处理器,具有数百或数千个内核,经过优化可并行运行大量计算,因此近些年在深度学习和机器学习领域得到了广泛应用。
- 信号处理器DSP:专用于实时的数字信号处理,通过采用饱和算法处理溢出问题,通过乘积累加运算提高矩阵运算的效率,以及为傅里叶变换设计专用指令等方法,在各类高速信号采集的设备中得到广泛应用。
- 可编程逻辑门阵列FRGA。
- 通用处理器CPU。
存储器
存储器是利用半导体、磁、光等介质制成用于存储数据的电子设备。根据存储器的硬件结
构可分为SRAM、DRAM、NVRAM、Flash、EPROM、Disk等。计算机系统中的存储器通常采
用分层的体系结构,按照与处理器的物理距离可分为4个层次:
- 片上缓存:又称为片内缓存,即芯片内直接继承的缓存,在处理器核心中直接集成的缓存,一般为 SRAM结构,实现数据的快速读取。它容量较小,一般为16kB~512kB, 按照不同的设计可能划分为一级或二级。其特点是容量最小,速度最快。
- 片外缓存:类似于Cache,在处理器核心外的缓存,需要经过交换互联开关访问,一般也是由SRAM构成,容量较片上缓存略大,可以为256kB~4MB。 按照层级被称为 L2Cache或 L3Cache, 或者称为平台Cache。
- 主存(内存):通常采用 DRAM结构,以独立的部件/芯片存在,通过总线与处理器连接。 DRAM依赖不断充电维持其中的数据,容量在数百M B 至数十G B 之间。
- 外存:可以是磁带、磁盘、光盘和各类Flash等介质器件,这类设备访问速度慢,但容量大,且在掉电后能够保持其数据。
总线
总线 是指计算机部件间 遵循某一特定协议实现数据交换的形式,即以一种特定格式按照规定的控制逻辑实现部件间的数据传输。
总线性能指标
总线的性能指标常见的有总线带宽、总线服务质量QoS、 总线时延和总线抖动等。
总线分类
按照总线在计算机中所处的位置划分
按照总线在计算机中所处的位置划分为内总线、系统总线和外部总线。
- 内总线:用于各类芯片内部互连,也可称为片上总线 或片内总线。
- 系统总线:指计算机中CPU、 主存、 I/O 接口的总线,计算机发展为多总线结构后,系统总线的含义有所变化。
- 狭义的系统总线仍为CPU与主存、通信桥连接的总线。
- 广义上,还应包含计算机系统内,经由系统总线再次级联的总线,常被称为局部总线。
- 外部总线:计算机板和外部设备之间,或者计算机系统之间互联的总线,又称为通信总线。
按照连接方式分类
按照连接方式分类,可分为并行总线和串行总线。
- 并行总线:主要包括PCI、PCle和ATA(IDE) 等,其特点是效率高、传输距离短。
- 串行总线:主要包括USB、SATA、CAN、RS-232、RS-485、RapidIO和以太网等,其特点是效率低、传输距离长。
按照功能分类
按照功能分类,可划分为数据总线、地址总线、控制总线。
接口
接口是指同一计算机不同功能层之间的通信规则。
接口分类
- 显示类接口:HDMI、DVI 和 DVI等。
- 音频输入输出类接口:TRS、RCA、XLR等。
- 网络类接口:RJ45、FC等。
- PS/2接口
- USB接口
- SATA接口
- LPT打印接口
- RS-232 接口
注:对于总线而言,一种总线可能存在多种接口。
计算机软件
文件系统
文件 (File) 是具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合,是一种抽象机制,它隐藏了硬件和实现细节,提供了将信息保存在外存上而且便于以后读取的手段,使用户不必了解信息存储的方法、位置以及存储设备实际操作方式便可存取信息。
一个文件包括文件体和文件说明。文件体是文件真实的内容;文件说明是操作系统为了管理文件所用到的信息,包括文件名、文件内部标识、文件类型、文件存储地址、文件长度、访问权限、建立时间和访问时间等。
文件系统是操作系统中实现文件统一管理的一组软件和相关数据的集合,是专门负责管理和存取文件信息的软件机构。文件系统的功能包括按名存取、统一的用户接口、并发访问和控制、安全性控制、优化性能、差错恢复。
- 按名存取:即用户可以“按名存取”,而不是“按地址存取”。
- 统一的用户接口:在不同设备上提供同样的接口,方便用户操作和编程。
- 并发访问和控制:在多道程序系统中支持对文件的并发访问和控制。
- 安全性控制:在多用户系统中的不同用户对同一文件可有不同的访问权限。
- 优化性能:采用相关技术提高系统对文件的存储效率、检索和读/写性能。
- 差错恢复:能够验证文件的正确性,并具有一定的差错恢复能力。
文件类型
- 按文件的性质和用途分类可将文件分为系统文件、库文件和用户文件。
- 按信息保存期限分类可将文件分为临时文件、档案文件和永久文件。
- 按文件的保护方式分类可将文件分为只读文件、读/写文件、可执行文件和不保护文件。
- UNIX系统将文件分为普通文件、目录文件和设备文件(特殊文件)。
文件结构
文件的结构是指文件的组织形式。从用户角度看到的文件组织形式称为文件的逻辑结构;从实现的角度看,文件在文件存储器上的存放方式称为文件的物理结构。
文件的逻辑结构
- 有结构的记录式文件:由一个以上的记录构成的文件;在记录式文件中,所有的记录通常都是描述一个实体集的,有着相同或不同数目的数据项,记录的长度可分为定长(指文件中所有记录的长度相同)和不定长(指文件中各记录的长度不相同)两类。
- 无结构的流式文件:由一串顺序字符流构成的文件。无结构的流式文件的文件体为字节流,不划分记录。无结构的流式文件通常采用顺序访问方式,并且每次读/写访问可以指定任意数据长度,其长度以字节为单位。
文件的物理结构
- 连续结构:也称顺序结构,它将逻辑上连续的文件信息依次存放在连续编号的物理块上。只要知道文件的起始物理块号和文件的长度,就可以很方便地进行文件的存取。逻辑上相邻,物理上也相邻。
- 链接结构:也称串联结构,它将逻辑上连续的文件信息存放在不连续的物理块上,每个物理块设有一个指针指向下一个物理块。因此,只要知道文件的第1个物理块号,就可以按链指针查找整个文件。逻辑上相邻,物理上不相邻。
- 索引结构:将逻辑上连续的文件信息存放在不连续的物理块中,系统为每个文件建立一张索引表(类似目录)。索引表记录了文件信息所在的逻辑块号对应的物理块号,并将索引表的起始地址放在与文件对应的文件目录项中。
- 多个物理块的索引表:多个物理块的索引表可以有两种组织方式:链接文件和多重索引方式。
文件存取方法
- 顺序存取方法是指对文件中的信息按顺序依次进行读/写。
- 随机存取方法是指对文件中的信息可以按任意的次序随机地读/写。
文件存储空间的管理方法
- 空闲区表:将外存空间上的一个连续的未分配区域称为“空闲区”。操作系统为磁盘外存上的所有空闲区建立一张空闲表,每个表项对应一个空闲区,空闲表中包含序号、空闲区的第1块号、空闲块的块数和状态等信息。它适用于连续文件结构。
- 位示图:这种方法是在外存上建立一张位示图(Bitmap),记录文件存储器的使用情况。每一位对应文件存储器上的一个物理块,取值0和1分别表示空闲和占用。
- 空闲块链:每个空闲物理块中有指向下一个空闲物理块的指针,所有空闲物理块构成一个链表。
- 成组链接法: UNIX 系统采用该方法。例如,在实现时系统将空闲块分成若干组,每100个空闲块为一组,每组的第1个空闲块登记了下一组空闲块的物理盘块号和空闲块总数。
位示图计算题
题1:
如下所示,每个字字长为8bit,字编号、位编号、磁盘块编号都是从0开始,请问第64块磁盘应该放在几号字的几号位?
解析:由于字编号、位编号、磁盘块编号都是从0开始的,所以第64块磁盘应该对应编号65。
65/8 = 8…1,因此放在第9个字(第8个字放不下),编号8;放在第1位,编号0。
题2:
某字长为32位的计算机文件管理系统采用位示图记录磁盘使用情况。若磁盘容量为300GB,物理块大小为1MB,那么位示图的大小为多少个字?
解析:300GB /1MB/32 = 9600
文件共享
文件共享通常采用文件链接的方式,常见的文件链接有硬链接和符号链接两种。
- 硬链接:两个文件目录表目指向同一个索引结点的链接,该链接也称基于索引结点的链接。换句话说,硬链接是指不同文件名与同一个文件实体的链接。文件硬链接不利于文件主删除它拥有的文件,因为文件主要删除它拥有的共享文件,必须首先删除(关闭)所有的硬链接,否则就会造成共享该文件的用户的目录表目指针悬空。
- 符号链接:又称软连接,建立新的文件或目录,并与原来文件或目录的路径名进行映射,当访问一个符号链接时,系统通过该映射找到原文件的路径,并对其进行访问。采用符号链接可以跨越文件系统,甚至可以通过计算机网络连接到世界上任何地方的机器中的文件,此时只须提供该文件所在的地址以及在该机器中的文件路径。
文件保护
文件系统对文件的保护常采用存取控制的方式进行,其实现方式分为以下几种:
- 存取控制矩阵:理论上,存取控制的方法可用存取控制矩阵实现,它是一个二维矩阵,一维列出计算机的全部用户,另一维列出系统中的全部文件,矩阵中的每个元素A,表示第i个用户对第j 个文件的存取权限。
- 存取控制表:存取控制矩阵由于太大往往无法实现。一个改进的办法是按用户对文件的访问权力的差别对用户进行分类,由于某一文件往往只与少数几个用户有关,所以这种分类方法可使存取控制表简化。 UNIX系统就是使用了这种存取控制表方法,它把用户分成三类:文件主、同组用户和其他用户,每类用户的存取权限为可读、可写、可执行以及它们的组合。相当于列出一个文件的有权限的用户。
- 用户权限表。改进存取控制矩阵的另一种方法是以用户或用户组为单位将用户可存取的文件集中起来存入表中,这称为用户权限表。表中的每个表目表示该用户对应文件的存取权限,这相当于存取控制矩阵一行的简化。相当于列出用户有权限访问的所有文件。
- 密码:在创建文件时,由用户提供一个密码,在文件存入磁盘时用该密码对文件的内容加密。在进行读取操作时,要对文件进行解密,只有知道密码的用户才能读取文件。
中间件
中间件(Middleware) 作为应用软件与各种操作系统之间使用的标准化编程接口和协议,可以起承上启下的作用,使应用软件的开发相对独立于计算机硬件和操作系统,并能在不同的系统上运行,实现相同的应用功能。
中间件分类
按照中间件在分布式系统中承担的职责不同,可以划分以下几类中间件产品:
- 通信处理(消息)中间件:在分布式系统中,人们要建网和制定出通信协议,以保证系统能在不同平台之间通信,实现分布式系统中可靠的、高效的、实时的跨平台数据传输,这类中间件称为消息中间件,也是市面上销售额最大的中间件产品,目前主要产品有BEA的eLink、IBM 的 MQSeries、TongLINK等。
- 事务处理(交易)中间件:在分布式事务处理系统中,经常要处理大量事务,特别是OLTP 中,每项事务常常要多台服务器上的程序按顺序协调完成,一旦中间发生某种故障,不但要完成恢复工作,而且要自动切换系统保证系统永不停机,实现高可靠性运行。要使大量事务在多台应用服务器上能实时并发运行,并进行负载平衡的调度,实现与昂贵的可靠性机和大型计算机系统的同等功能,为了实现这个目标,要求中间件系统具有监视和调度整个系统的功能。
- 数据存取管理中间件:在分布式系统中,重要的数据都集中存放在数据服务器中,它们可以是关系型的、复合文档型、具有各种存放格式的多媒体型,或者是经过加密或压缩存放的,该中间件将为在网络上虚拟缓冲存取、格式转换、解压等带来方便。
- Web服务器中间件:浏览器图形用户界面已成为公认规范,然而它的会话能力差,不擅长做数据的写入任务,受HTTP 协议的限制多等,就必须对其进行修改和扩充,因此出现了Web服务器中间件,如SilverStream公司的产品。
- 安全中间件:一些军事、政府和商务部门上网的最大障碍是安全保密问题,而且不能使用国外提供的安全措施(如防火墙、加密和认证等),必须用国产产品。产生不安全因素是由操作系统引起的,但必须要用中间件去解决,以适应灵活多变的要求。
- 跨平台和架构的中间件:在分布式系统中,还需要集成各结点上的不同系统平台上的构件或新老版本的构件,由此产生了架构中间件。
- 专用平台中间件:专用平台中间件为特定应用领域设计领域参考模式,建立相应架构,配置相应的构件库和中间件,为应用服务器开发和运行特定领域的关键任务(如电子商务、网站等)。
- 网络中间件:包括网管、接入、网络测试、虚拟社区和虚拟缓冲等。
软件构件
构件又称为组件,是一个自包容、可复用的程序集。构件是一个程序集,或者说是一组程序的集合。这个集合可能会以各种方式体现出来,如源程序或二进制的代码。这个集合整体向外提供统一的访问接口,构件外部只能通过接口来访问构件,而不能直接操作构件的内部。构件的两个最重要的特性是自包容与可重用。
软件构件的组装模型
随着软件构件技术的发展,人们开始尝试利用软件构件进行搭积木式的开发,即构件组装模型。在构件组装模型中,当经过需求分析定义出软件功能后,将对构件的组装结构进行设计,将系统划分成一组构件的集合,明确构件之间的关系。在确定了系统构件后,则将独立完成每一个构件,这时既可以开发软件构件,也可以重用已有的构件,当然也可以购买或选用第三方的构件。构件是独立的、自包容的,因此架构的开发也是独立的,构件之间通过接口相互协作。
商用构件的标准规范
本小节了解即可,因为J2EE、DNA 2000等内容太老了,应该不会再考。
当前,主流的商用构件标准规范包括对象管理组织 (OMG) 的CORBA、Sun 的J2EE和 Microsoft 的DNA。
- CORBA:公共对象请求代理架构 (CORBA) 主要分为3个层次:对象请求代理、公共对象服务和公共设施。
- 对象请求代理:最底层的对象请求代理 (ORB) 规定了分布对象的定义(接口)和语言映射,实现对象间的通信和互操作,是分布对象系统中的“软总线”。
- 公共对象服务:在ORB之上定义了很多公共服务,可以提供诸如并发服务、名字服务、事务(交易)服务、安全服务等各种各样的服务。
- 公共设施:最上层的公共设施则定义了构件框架,提供可直接为业务对象使用的服务,规定业务对象有效协作所需的协定规则。
- CORBA CCM:CORBA CCM(CORBA Component Model)构件模型是OMG组织制定的一个用于开发和配置分布式应用的服务器端构件模型规范,它主要包括如下3项内容:
- 抽象构件模型:用以描述服务器端构件结构及构件间互操作的结构。
- 构件容器结构:用以提供通用的构件运行和管理环境,并支持对安全、事务、持久状态等系统服务的集成。
- 构件的配置和打包规范: CCM 使用打包技术来管理构件的二进制、多语言版本的可执行代码和配置信息,并制定了构件包的具体内容和文档内容标准。
- J2EE:J2EE 同时支持远程方法调用(RMI)和互联网内部对象请求代理协议(IIOP), 而在服务器端分布式应用的构造形式,则包括了 Java Servlet、JSP、EJB等多种形式,以支持不同的业务需求。
- DNA 2000:Microsoft 的 DCOM/COM/COM+ 技术在DNA 2000 分布计算结构基础上,展现了一个全新的分布构件应用模型。
相关文章:

系统架构设计师(一):计算机系统基础知识
系统架构设计师(一):计算机系统基础知识 引言计算机系统概述计算机硬件处理器处理器指令集常见处理器 存储器总线总线性能指标总线分类按照总线在计算机中所处的位置划分按照连接方式分类按照功能分类 接口接口分类 计算机软件文件系统文件类…...
VMware安装Ubuntu全攻略
VMware安装Ubuntu实战分享大纲 准备工作 列出安装前的必要条件和工具,包括硬件要求、软件下载链接等。 VMware Workstation Pro/Player的安装与激活Ubuntu镜像文件下载(官方推荐版本)确保主机系统满足虚拟化技术(VT-x/AMD-V)要求创建虚拟机 详细描述在VMware中创建新虚…...

清理 pycharm 无效解释器
1. 起因, 目的: 经常使用 pycharm 来调试深度学习项目,每次新建虚拟环境,都是显示一堆不存在的名称,删也删不掉。 总觉得很烦,是个痛点。决定深入研究一下。 2. 先看效果 效果是能行,而且清爽多了。 3. …...
精益数据分析(92/126):指标基准化——如何判断你的数据表现是否足够优秀
精益数据分析(92/126):指标基准化——如何判断你的数据表现是否足够优秀 在创业过程中,面对纷繁复杂的指标数据,创业者常常困惑于“什么样的表现算优秀”“我的数据是否达标”。今天,我们将通过WP Engine的…...

手机如何压缩文件为 RAR 格式:详细教程与工具推荐
在如今这个数字化时代,手机已经成为我们生活中不可或缺的工具。随着我们使用手机的频率越来越高,手机中的文件也越来越多,照片、视频、文档等各种类型的文件不断占据着手机的存储空间。 据统计,普通用户的手机存储空间中…...
Elasticsearch集群管理的相关工具介绍
Elasticsearch 集群管理涉及节点监控、配置管理、故障排查、性能优化等多个环节,依赖一系列官方工具和社区方案实现高效运维。以下从 官方工具链、生态集成工具、社区辅助工具 三个维度介绍核心工具及其应用场景: 一、官方核心工具链 1. Elasticsearch 内置功能 _cluster 接…...
基于多尺度卷积和扩张卷积-LSTM的多变量时间序列预测
时间序列预测是机器学习和数据分析中的重要领域,广泛应用于金融、气象、交通等领域。本文将介绍一种结合多尺度卷积、扩张卷积和LSTM的混合神经网络模型,用于多变量时间序列预测,并提供完整的代码实现和详细讲解。 1. 模型架构概述 我们提出的模型结合了三种强大的神经网络…...

Java 注解式限流教程(使用 Redis + AOP)
Java 注解式限流教程(使用 Redis AOP) 在上一节中,我们已经实现了基于 Redis 的请求频率控制。现在我们将进一步升级功能,使用 Spring AOP 自定义注解 实现一个更优雅、可复用的限流方式 —— 即通过 RateLimiter 注解…...

C# XAML 基础:构建现代 Windows 应用程序的 UI 语言
在现代 Windows 应用程序开发中,XAML (eXtensible Application Markup Language) 扮演着至关重要的角色。作为一种基于 XML 的声明性语言,XAML 为 WPF (Windows Presentation Foundation)、UWP (Universal Windows Platform) 和 Xamarin.Forms 应用程序提…...
Linux运维笔记:服务器感染 netools 病毒案例
文章目录 背景排查过程1. 发现异常2. 检测隐藏进程3. 尝试终止进程4. 深入分析进程 处理步骤1. 禁用 Cron 任务2. 删除恶意文件3. 终止恶意进程4. 重启系统 注意事项总结 提示:本文记录了一起 Linux 服务器感染恶意软件(疑似挖矿病毒)的排查与…...
(面试)获取View宽高的几种方式
Android 中获取 View 宽高的几种方式,以及它们的适用场景和注意事项: 1. View.getWidth() 和 View.getHeight() 原理: 直接从 View 对象中获取已经计算好的宽度和高度。 优点: 简单直接。 缺点: 在 onCreate()、onStart() 等生命周期方法中࿰…...

【Linux】进程地址空间揭秘(初步认识)
10.进程地址空间(初步认识) 文章目录 10.进程地址空间(初步认识)一、进程地址空间的实验现象解析二、进程地址空间三、虚拟内存管理补充:数据的写时拷贝(浅谈)补充:页表(…...

设计模式——备忘录设计模式(行为型)
摘要 备忘录设计模式是一种行为型设计模式,用于在不破坏封装性的前提下,捕获对象的内部状态并在需要时恢复。它包含三个关键角色:原发器(Originator)、备忘录(Memento)和负责人(Car…...
吴恩达:构建自动化评估并不需要大量投入,从一些简单快速的示例入手,然后逐步迭代!
吴恩达老师又来信了。 这次他分享了一个重要观点:构建自动化评估并不需要大量投入。从一些简单快速的示例入手,然后逐步迭代! 以下是我对原文的翻译: 亲爱的朋友们: 我注意到,许多生成式 AI 应用项目在系…...
鸿蒙OSUniApp内存管理优化实战:从入门到精通#三方框架 #Uniapp
UniApp内存管理优化实战:从入门到精通 在开发 UniApp 应用时,特别是针对鸿蒙设备的开发过程中,内存管理往往成为影响应用性能的关键因素。本文将结合实际项目经验,深入探讨 UniApp 应用的内存优化策略,帮助开发者构建…...
Vue-5-基于JavaScript和plotly.js绘制数据分析类图表
文章目录 1 折线图示例1.1 网页基本结构1.2 绘图流程1.2.1 type图表类型1.2.2 mode显示方式1.2.3 marker数据点的样式1.3 横坐标为时间戳1.3.1 xaxis.type坐标值类型1.3.2 xaxis.tickformat格式1.4 悬停时展示毫秒数2 一个变量2.1 箱线图2.2 小提琴图2.3 直方图3 两个变量3.1 折…...

UI自动化测试的革新,新一代AI工具MidScene.js实测!
前言 AI已经越来越深入地走入我们的实际工作,在软件测试领域,和AI相关的新测试工具、方法也层出不穷。在之前我们介绍过结合 mcp server 实现 AI 驱动测试的案例,本文我们将介绍一个近期崭露头角的国产AI测试工具 Midscene.js Midscene.js简介 MidScene.js 是由字节跳动 w…...
StarRocks的几种表模型
## 一、引言:OLAP场景下的表模型挑战 在实时分析领域,数据表的设计直接影响查询性能、存储效率和更新灵活性。StarRocks作为新一代极速全场景MPP数据库,针对不同的业务场景提供了多样化的表模型解决方案。每种模型通过独特的存储结构和预计算…...

4. Qt对话框(2)
在上节中已经学习了对话框的确认和取消,本节内容继续接上节完成登录对话框实例并得到登录信息。 本文部分ppt、视频截图原链接:[萌马工作室的个人空间-萌马工作室个人主页-哔哩哔哩视频] 1 实现登录对话框 1.1 功能需要 得到登录信息,需要…...
2025-5-31-C++ 学习 字符串(终)
字符串 2025-5-31-C 学习 字符串(终)P1200 [USACO1.1] 你的飞碟在这儿 Your Ride Is Here题目描述输入格式输出格式输入输出样例 #1输入 #1输出 #1 输入输出样例 #2输入 #2输出 #2 说明/提示题解代码 P1597 语句解析题目背景题目描述输入格式输出格式输入…...

Android Studio 2022.2.1.20 汉化教程
查看Android Studio 版本 Android Studio Flamingo | 2022.2.1 Patch 2 下载:https://plugins.jetbrains.com/plugin/13710-chinese-simplified-language-pack----/versions/stable...
第17讲、odoo18可视化操作代码生成模块
1. 模块概述 代码框架生成模块是一个专为Odoo开发者设计的工具,旨在简化模块开发过程中的重复性工作。该模块允许开发者通过定义模型名称和字段,自动生成相应的Python代码、XML视图和CSV权限配置文件,从而大幅提高开发效率。通过这种方式&am…...

golang -- slice 底层逻辑
目录 一、前言二、结构三、创建3.1 根据 make创建3.2 通过数组创建 四、内置append追加元素4.1 追加元素4.2 是否扩容4.2.1 不扩容4.2.2 扩容 总结 一、前言 前段时间学了go语言基础,过了一遍之后还是差很多,所以又结合几篇不同资料重新学习了一下相关…...

SOC-ESP32S3部分:26-物联网MQTT连云
飞书文档https://x509p6c8to.feishu.cn/wiki/IGCawAgqFibop7kO83KcsDFBnNb ESP-MQTT 是 MQTT 协议客户端的实现,MQTT 是一种基于发布/订阅模式的轻量级消息传输协议。ESP-MQTT 当前支持 MQTT v5.0。 特性 支持基于 TCP 的 MQTT、基于 Mbed TLS 的 SSL、基于 WebSo…...
从前端工程化角度解析 Vite 打包策略:为何选择 Rollup 而非 esbuild。
文章目录 前言一、esbuild 与 Rollup 的技术特性对比1、esbuild:极速开发利器,功能尚待完善2、Rollup:专业打包工具,功能全面强大 二、Vite 打包策略的工程化考量因素1、开发阶段与生产阶段的需求差异2、功能完整性与生态兼容性3、…...
三层架构 vs SOA vs 微服务:该选谁?
三层架构 vs SOA vs 微服务:该选谁? 一、从单体到分布式:架构演进的必然性 最早的系统架构通常是单体架构(Monolithic Architecture),所有功能都打包在一个应用里,部署方便,但扩展性和灵活性有限。后来,为了让系统更具可维护性,三层架构成为主流。但当业务变得复杂…...

制造业的未来图景:超自动化与劳动力转型的双重革命
市场现状:传统制造业的转型阵痛 当前全球制造业正站在历史性变革的十字路口。埃森哲对552位工厂经理的全球调研显示,60%的受访者将劳动力转型视为首要战略任务,而63%的工厂正在加速部署自动化技术[1]。超过75%的工厂经理认为&…...
使用Haproxy搭建Web群集
一、基础环境准备 服务器规划 67 HAProxy调度器:1台 (2核4G,CentOS 7/8) Web服务器:至少2台(如Nginx/Apache,建议192.168.1.101-102) 客户端测试机:1台(Windows/Linux)…...

【Unity】相机 Cameras
1 前言 主要介绍官方文档中相机模块的内容。 关于“9动态分辨率”,这部分很多API文档只是提了一下,具体细节还需要自己深入API才行。 2 摄像机介绍 Unity 场景在三维空间中表示游戏对象。由于观察者的屏幕是二维屏幕,Unity 需要捕捉视图并将…...

如何在 Solana 上发币,并创建初始流动性让项目真正“动”起来?
在 Solana 上发行代币如今已不再是技术门槛,而是市场策略和执行效率的较量。如果你只是简单发了一个代币,却没为它建立流动性和市场机制,那么它就只是一个“死币”。 本文将带你一步步理解,如何从发币到建立流动性池,…...