操作系统期末复习 | 批处理程序 | PV实现同步互斥 | 调度算法 | 页面置换算法 | 磁盘调度算法

操作系统引论

批处理程序

单道批处理:引入脱机输入/输出技术,并由监督程序负责控制作业的输入、输出。主要优点是缓解了一定程度的人机速度矛盾,资源利用率有所提升。主要缺点是内存中仅能有一道程序运行,只有该程序运行结束之后才能调入下一道程序。CPU有大量的时间是在空闲等待1/0完成,资源利用率依然很低。

多道批处理:主要优点是多道程序并发执行,共享计算机资源。资源利用率大幅提升,CPU和其他资源更能保持“忙碌”状态,系统吞吐量增大。主要缺点是用户响应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待计算机处理完成,中间不能控制自己的作业执行。eg:无法调试程序/无法在程序运行过程中输入一些参数)。

分时系统

计算机以时间片为单位轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。主要优点是用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在。主要缺点是不能优先处理一些紧急任务。操作系统对各个用户/作业都是完全公平的,循环地为每个用户作业服务一个时间片,不区分任务的紧急性。及时性:用户程序是轮流执行CPU的一个时间片,但由于计算机的高速处理能力,能保证在较短和可容忍的时间内响应和完成处理用户请求。

实时系统

主要优点是能够优先响应一些紧急任务,某些紧急任务不需时间片排队。在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完事件。实时操作系统的主要特点是及时性和可靠性。

进程同步与互斥

进程的概念

进程是指计算机中已运行的程序,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。

  1. 动态性:进程是程序的一次执行,它有着创建、活动、暂停、终止等过程,具有一定的生命周期,是动态地产生、变化和消亡的。动态性是进程最基本的特征。
  2. 并发性:指多个进程实体,同存于内存中,能在一段时间内同时运行,并发性是进程的重要特征,同时也是操作系统的重要特征。引入进程的目的就是为了使程序能与其他进程的程序并发执行,以提高资源利用率。
  3. 独立性:指进程实体是一个能独立运行、独立获得资源和独立接受调度的基本单位。凡未建立PCB的程序都不能作为一个独立的单位参与运行。
  4. 异步性:由于进程的相互制约,使进程具有执行的间断性,即进程按各自独立的、 不可预知的速度向前推进。异步性会导致执行结果的不可再现性,为此,在操作系统中必须配置相应的进程同步机制。
  5. 结构性:每个进程都配置一个PCB对其进行描述。从结构上看,进程实体是由程序段、数据段和进程控制段三部分组成的。

进程与程序的区别

  1. 程序是永存的;进程是暂时的,是程序在数据集上的一次执行,有创建有撤销,存在是暂时的。
  2. 程序是静态的观念,进程是动态的观念。
  3. 进程具有并发性,而程序没有。
  4. 进程是竞争计算机资源的基本单位,程序不是。
  5. 进程和程序不是一一对应的。
  6. 一个程序可对应多个进程即多个进程可执行同一程序。
  7. 一个进程可以执行一个或几个程序。

进程的基本状态

进程在其生命周期内,由于系统中各进程之间的相互制约关系及系统的运行环境的变化,使得进程的状态也在不断地发生变化(一个进程会经历若干种不同状态)。通常进程有以下五种状态,前三种是进程的基本状态。

  1. 运行状态:进程正在处理机上运行。在单处理机环境下,每一时刻最多只有一个进程处于运行状态。

  2. 就绪状态:进程已处于准备运行的状态,即进程获得了除处理机之外的一切所需资源,一旦得到处理机即可运行。

  3. 阻塞状态:又称等待状态:进程正在等待某一事件而暂停运行,如等待某资源为可用(不包括处理机)或等待输入/输出完成。即使处理机空闲,该进程也不能运行。

  4. 创建状态:进程正在被创建,尚未转到就绪状态。创建进程通常需要多个步骤:首先申请一个空白的PCB,并向PCB中填写一些控制和管理进程的信息;然后由系统为该进程分 配运行时所必需的资源;最后把该进程转入到就绪状态。

  5. 结束状态:进程正从系统中消失,这可能是进程正常结束或其他原因中断退出运行。当进程需要结束运行时,系统首先必须置该进程为结束状态,然后再进一步处理资源释放和回收等工作。

image-20240625191052383

**作业2:**请简述进程发生状态变迁1、3、4、6、7的原因;系统中常常由于某一进程的状态变迁引起另一进程也产生状态变迁,这种变迁称为因果变迁。下述变迁是否为因果变迁:3-2,4-5,7-2,3-6,请说明原因。

微信图片_20240625192422

进程同步与互斥

进程同步是指在多个进程或线程之间协调彼此的执行顺序,以避免出现竞态条件、死锁和其他并发问题。当多个进程或线程共享同一资源时,如果它们同时读取或写入该资源,可能会引发数据不一致的问题。为了解决这些问题,需要使用同步机制来协调它们的访问。

进程互斥指的是当一个进程访问某临界资源时,另一个想要访问该临界资源的进程必须等待。当前访问临界资源的进程访问结束,释放该资源之后,另一个进程才能去访问临界资源。

临界资源

我们把一个时间段内只允许一个进程使用的资源称为临界资源。许多物理设备(比如摄像头、打印机)都属于临界资源。此外还有许多变量、数据、内存缓冲区等都属于临界资源临界区指的是控制临界资源的代码。为实现对临界资源的互斥访问,必须遵循以下四个规则:

  1. 空闲让进:临界区空闲时,可以允许一个请求进入临界区的进程立即进入临界区。
  2. 忙则等待:当已有进程进入临界区时,其他试图进入临界区的进程必须等待。
  3. 有限等待:对请求访问的进程,应保证能在有限时间内进入临界区(保证不会饥饿)。
  4. 让权等待:当进程不能进入临界区时,应立即释放处理机,防止进程忙等待。

P、V操作控制进程同步互斥

**作业3-1:**3 个进程 P1、P2、P3 互斥地使用一个包含 N(N > 0)个单元的缓冲区。P1 每次用 produce() 生成一个正整数,并用 put() 将其送入缓冲区的某一空单元中 ;P2每次用 getodd() 从该缓冲区中取出一个奇数,并用 countodd() 统计奇数的个数 ;P3 每次用geteven() 从该缓冲区中取出一个偶数,并用 counteven() 统计偶数的个数。请用信号量机制实现这 3 个进程的同步与互斥活动,并说明所定义的信号量的含义。要求用伪代码描述。

b43ca26e87b66f768b9bd4fae9f0806

如下图所示,get、copy和put三个进程共用两个缓冲区s和t (其大小每次存放一个记录) ,get 进程负责不断地把输入记录输入缓冲区s 中,copy 进程负责从缓冲区s 中取出记录复制到缓冲区t 中,而put 进程负责从缓冲区t 中取出记录打印。试用PV 操作实现这三个进程之间的同步,并写出程序描述。

image-20240625193700750
8a28918d4d5f52334ca3787c8132ec9

进程同步

死锁

在两个或多个并发进程中,如果每个进程持有某种资源而又都等待着别的进程释放它或它们现在保持着的资源,否则就不能向前推进,此时每个进程都占用了一定的资源但又都不能向前推进,称这一组进程产生了死锁

产生死锁的两个原因:

  1. 系统资源不足。
  2. 进程推进顺序非法。

产生死锁的四个必要条件:

  1. 互斥条件:涉及的资源是非共享的。

  2. 不剥夺条件:进程所获得的资源在未使用完毕之前不能被其它进程强行夺走。

  3. 部分分配:进程每次申请它所需要的一部分资源,在等待新资源的同时继续占用已分配到的资源。

  4. 环路条件:存在着一种进程的循环链,链中的每一个进程已获得的资源同时被链中的下一个进程请求。

解决死锁的四种策略:

  1. 预防:通过设置某些限制条件,以破坏产生死锁的四个条件中的一个或者几个,来防止发生死锁。
  2. 避免:系统在分配资源时根据资源的使用情况提前作出预测,从而避免死锁的发生。
  3. 检测:允许系统在运行的过程中产生死锁,但是,系统中有相应的管理模块可以及时检测出已经产生的死锁,并且精确地确定与死锁有关的进程和资源,然后采取适当措施,清除系统中已经产生的死锁。
  4. 解除:与检测死锁相配套的一种措施,用于将进程从死锁状态下解脱出来。

选择进程调度算法的准则:尽快响应交互式用户的请求、尽量提高处理机的利用率、 尽可能提高系统的吞吐量。如果所有进程同时到达,短进程优先算法使进程的平均周转时间最短。

银行家算法

设系统中有5个进程P1、P2、P3、P4、P5,有3种类型的资源A、B、C,其中A资源的数量是17,B资源的数量是5,C资源的数量是20,T0时刻系统状态如下表所示。

image-20240625195123412
  1. 计算每个进程还可能需要的资源,并填入表的“仍然需要资源数(Need)”的栏目。
  2. 0时刻系统是否处于安全状态?为什么?
  3. 如果T0时刻进程P2又有新的资源请求(0,3,4),是否实施资源分配?为什么?
  4. 如果T0时刻,若进程P4又有新的资源请求(2,0,1),是否实施资源分配?为什么?
  5. 在4的基础上,若进程P1又有新的资源请求(0,2,0),是否实施资源分配?为什么?
d015a6b92fd02ec8213aae4d17dd04d

进程调度常用算法

在这里插入图片描述

在一个系统中,有5个进程进入系统,它们的提交时间、执行时间如下:

image-20240625202416734

若系统分别采用先来先服务(FCFS)调度算法、短作业优先(SJF)和最高响应比(HRRN)调度算法进行上述进程调度,请计算几种算法的周转时间和带权周转时间并填写下表。

image-20240625202532773
7151f381d2957edfb11e941e0af130b e57d7400e58d3e4c928d6676c44bf96

进程A、B、C、D先后在1、2、3、4时刻到达系统,需要运行的时间分别为6ms、5ms、3ms、4ms。如果时间片分别为2ms和5ms,计算各个进程的周转时间和带权周转时间并填写下表。

2eb3a4c3ab5a9844c3fb380e20af24c

image-20240625211939182

存储器管理

地址

  1. 逻辑地址:用户程序的目标模块都以0为基地址顺序编址的,这种地址称为逻辑地址,也称为相对地址。

  2. 物理地址:内存中各物理存储单元的地址是从统一的基地址开始顺序编址的,这种地址称为物理地址,也称为绝对地址。

  3. 地址重定位:程序和数据装入内存时,需对目标程序中的地址进行修改。这种把逻辑地址转变为内存物理地址的过程称作重定位。

分区存储管理

在某个系统,存储管理方案采用动态分区方式。在某一时刻,主存中有两个空白区,分别为120kb和78kb。现有3个被调度执行的作业J1、J2和J3,对内存需求分别为50KB、60KB、70KB。若用首次适应算法最佳适应算法来处理这个作业序列,试问哪一种算法可以满足三个作业的分配需求?请说明分配过程。

f57388efb54104fe52258ad2895a142

某页式存储管理系统,内存的大小为256KB,被分为128块,块号为0、1、2、……、127。设某进程有4页,其页号为0、1、2、3,被分别装入内存的4、5、18,9号块。该进程的大小是多少字节?请计算该进程每一页在内存的起始地址并填入下表。计算逻辑地址2176和6300对应的物理地址是多少?

页号块号内存起始地址
04
15
218
39
cba690fd7f5b8b6145c75409f6cb035

分页存储管理

请求页式存储管理基本思想:将程序的逻辑地址空间划分为一系列的固定大小的页面,每个页面通常包含多个字节,比如4KB或8KB。程序运行时,只加载当前需要执行的部分(即页面)到物理内存中,其余部分暂存在磁盘上。当程序试图访问某个地址时,系统首先检查这个地址是否在当前已加载的页面内。如果在,就直接执行;如果不在(即发生了“缺页”),系统会从磁盘上读取对应的页面并将其调入内存,然后再继续执行。这种管理方式允许程序动态地使用内存,并通过页面替换算法(如LRU、FIFO或最近最不经常使用等)来优化内存使用和提高效率。

内部碎片是由于采用固定大小的内存分区,当一个进程不能完全使用分给它的固定内存区域时就产生了内部碎片,通常内部碎片难以完全避免。

现在普遍采用的段页式内存分配方式就是将进程的内存区域分为不同的段,然后将每一段由多个固定大小的页组成。通过页表机制,使段内的页可以不必连续处于同一内存区域,从而减少了外部碎片,然而同一页内仍然可能存在少量的内部碎片,只是一页的内存空间本就较小,从而使可能存在的内部碎片也较少。

页面置换算法

有一个虚拟存储系统, 每个进程在内存分配3页数据区, 页面大小为1KB, 刚开始时数据区为空。假设该进程的虚地址访问流为:5200、1000、1300、200、2250、1022、1200、4350、600、3050、6010、2010、2300、4020

(1)请计算出该进程的页面访问序列。

(2)若系统采用先进先出(FIFO)淘汰算法置换页面,请分析并计算发生页面置换和缺页中断的次数。

(3)若系统采用最近最久未使用(LRU)淘汰算法置换页面,请分析并计算发生页面置换和缺页中断的次数。

daa2401a09fa21c9a6e17e2bdd802f7 a41a6767feba8c8eb5167a4b4cf1301

抖动现象

抖动现象是指如果分配给进程的存储块数量小于进程所需要的最小值,进程的运行将会很频繁地产生缺页中断 ,这种频率非常高的页面置换现象称为抖动。

也可以说:页面在内存与外存之间频繁调度,以至于调度页面所需时间比进程实际运行时间还多,此时系统效率急剧下降,导致系统崩溃。这种现象称为颠簸或抖动。

输入输出系统

设备独立性

设备独立性是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以象使用文件一样,操纵、使用这些设备,而不必知道它们的具体存在形式。引入设备独立性后可以调高设备的利用率和分配时的灵活性;提高系统的可适应性和可扩展性;可以方便用户操作,易于实现IO重定向。

IO控制方式

程序直接控制方式

  1. CPU向控制器发出读指令。于是设备启动,并且状态寄存器设为1(未就绪)。
  2. 轮询检查控制器的状态(其实就是在不断地执行程序的循环,若状态位一直是1,说明设备还没准备好要输入的数据,于是CPU会不断地轮询)。
  3. 输入设备准备好数据后将数据传给控制器,并报告自身状态。
  4. 控制器将输入的数据放到数据寄存器中,并将状态改为0(己就绪)。
  5. CPU发现设备已就绪,即可将数据寄存器中的内容读入CPU的寄存器中,再把CPU寄存器中的内容放入内存。
  6. 若还要继续读入数据,则CPU继续发出读指令。

优点:实现简单。在读/写指令之后,加上实现循环检查的一系列指令即可(因此才称为“程序直接控制方式”)。

缺点:CPU和I/O设备只能串行工作,CPU需要一直轮询检查,长期处于“忙等”状态,CPU利用率低。

中断驱动方式

  1. 引入中断机制。
  2. 由于I/O设备速度很慢,因此在CPU发出读/写命令后,可将等待l/O的进程阻塞,先切换到别的进程执行。
  3. 当I/O完成后,控制器会向CPU发出一个中断信号,CPU检测到中断信号后,会保存当前进程的运行环境信息,转去执行中断处理程序处理该中断。
  4. 处理中断的过程中,CPU从I/O控制器读一个字的数据传送到CPU寄存器,再写入主存。
  5. 接着,CPU恢复等待l/O的进程(或其他进程)的运行环境,然后继续执行。

优点:与“程序直接控制方式”相比,在“中断驱动方式”中,I/O控制器会通过中断信号主动报告I/O已完成,CPU不再需要不停地轮询。CPU和I/O设备可并行工作,CPU利用率得到明显提升。

缺点:每个字在I/O设备与内存之间的传输,都需要经过CPU。而频繁的中断处理会消耗较多的CPU时间。

DMA控制方式

  1. 数据的传送单位是“块”。不再是一个字、一个字的传送。
  2. 数据的流向是从设备直接放入内存,或者从内存直接到设备。
  3. 仅在传送一个或多个数据块的开始和结束时,才需要CPU干预。

优点:数据传输以“块”为单位,CPU介入频率进一步降低。数据的传输不再需要先经过CPU再写入内存,数据传输效率进一步增加。CPU和I/O设备的并行性得到提升。

缺点:CPU每发出一条I/O指令,只能读/写一个或多个连续的数据块。
如果要读/写多个离散存储的数据块,或者要将数据分别写到不同的内存区域时,CPU要分别发出多条I/O指令,进行多次中断处理才能完成。

通道控制方式

  1. CPU向通道发出I/O指令。指明通道程序在内存中的位置,并指明要操作的是哪个I/O设备。之后CPU就切换到其他进程执行了。
  2. 通道执行内存中的通道程序(其中指明了要读入/写出多少数据,读/写的数据应放在内存的什么位置等信息)。
  3. 通道执行完规定的任务后,向CPU发出中断信号,之后CPU对中断进行处理。

优点:CPU、通道、I/O设备可并行工作,资源利用率很高。

缺点:实现复杂,需要专门的通道硬件支持。

Spolling技术

缓冲技术的作用:提高CPU与设备之间的并行程度,以空间代价换取时间代价

共享打印机为例:

  1. 在磁盘输出井中为进程申请一个空闲缓冲区(也就是说,这个缓冲区是在磁盘上的),并将要打印的数据送入其中:
  2. 为用户进程申请一张空白的打印请求表,并将用户的打印请求填入表中(其实就是用来说明用户的打印数据存放位置等信息的),再将该表挂到假脱机文件队列上。当打印机空闲时,输出进程会从文件队列的队头取出一张打印请求表,并根据表中的要求将要打印的数据从输出井传送到输出缓冲区,再输出到打印机进行打印。用这种方式可依次处理完全部的打印任务。

设备控制器

接收和识别CPU发出的命令;向CPU报告设备的状态;数据交换;地址交换。

磁盘调度算法

磁盘请求的磁道号次序为:120,69,78,2,5,29,65,38,106,88寻道时每个磁道移动需要0.1ms,磁臂启动时间为2ms。试计算按以下算法调度时的平均寻道时间:先来先服务(FCFS);最短寻道时间优先(SSTF);扫描算法(SCAN)。

4f241571d8661e3f6b91a095d677599

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/36890.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024全国青少年信息素养大赛图形化编程复赛评分标准及比赛大纲

一、 参赛技术要求 (1)竞赛平台 参赛选手使用官方竞赛平台进行比赛。 (2)网络环境 在能满足竞赛需求的联网环境下进行。 (3)浏览器 建议使用谷歌 Chrome 浏览器,版本号 100 及以上。 可以…

JVM专题四:JVM的类加载机制

Java中类的加载阶段 类加载 Java中的类加载机制是Java运行时环境的一部分,确保Java类可以被JVM(Java虚拟机)正确地加载和执行。类加载机制主要分为以下几个阶段: 加载(Loading):这个阶段&#x…

聊一聊 C# 弱引用 底层是怎么玩的

一:背景 1. 讲故事 最近在分析dump时,发现有程序的卡死和WeakReference有关,在以前只知道怎么用,但不清楚底层逻辑走向是什么样的,借着这个dump的契机来简单研究下。 二:弱引用的玩法 1. 一些基础概念 …

如何判断一个Repo是否是Private还是Internal?

Github的Repository分为三种类型,主要是用于决定谁可以访问、查看和克隆该仓库。GitHub 提供了几种不同的可见性选项,包括 Private、Public 和 Internal。 Private 只有仓库的拥有者和被明确邀请为协作者(Collaborator)的用户才能…

论文速览 | IEEE Signal Processing Letters, 2024 | 基于时空上下文学习的事件相机立体深度估计

论文速览 | IEEE Signal Processing Letters, 2024 | 基于时空上下文学习的事件相机立体深度估计 1 引言 在计算机视觉领域,立体深度估计一直是一个备受关注的研究热点。传统的基于帧的方法虽然取得了长足的进步,但在处理运动模糊、低照度和平坦区域等挑战性场景时仍面临诸多…

如何利用俄罗斯VK Ads破解中俄贸易难题?

在当前全球经济环境下,中国与俄罗斯之间的贸易关系正面临着新的机遇和挑战。 特别是随着国际形势的变化,中俄两国的贸易往来日益频繁,中国企业机构出口至俄罗斯的业务也随之增多。 在这样的背景下,如何通过有效的市场推广策略&a…

番茄害虫数据集:助力农业害虫识别(目标检测)

亲爱的读者们,您是否在寻找某个特定的数据集,用于研究或项目实践?欢迎您在评论区留言,或者通过公众号私信告诉我,您想要的数据集的类型主题。小编会竭尽全力为您寻找,并在找到后第一时间与您分享。 一、引…

第二证券:近300亿资金抄底,低估值+高增长“错杀”股名单来了,仅11只

成绩表现优质公司或存在“错杀”的状况。 头部宽基ETF成交额继续放量,近300亿资金抄底 6月21日,上证指数跌破3000点后,商场谨慎情绪延伸,成交量继续走低,本周4个交易日均缺乏7000亿元。 关于3000点以下的地量行情&a…

【初学者必看】6个mp3剪辑工具分享,附上详细音频剪辑教程

MP3音频剪辑怎么操作呢?随着互联网的发展,大家都很喜欢从网上下载歌曲当作手机铃声,但是网上下载的歌曲时长太长,要怎么截取其中的一小部分当作铃声呢?还有些小伙伴想要将多个MP3音频剪辑拼接在一起,不知道…

易用且免费的在线3D交互编辑器?

目前市面上的在线3D交互编辑器,有收费、免费、永久免费的。 1、博维数孪:永久免费的在线3D数字孪生应用平台,用户可以轻松创作和分享多种应用类型,包括3D交互展示、3D产品目录、交互式动画、3D产品配置器、交互式演示文稿、在线商…

android AIDL使用demo

背景 最近打算学习一下如何在framework层添加一个自定义service。 了解到自定义service需要使用aidl,为了加强对aidl的了解和使用过程,特意又温习了一下aidl的使用,并用博客的形式记录下来。 aidl官方参考:https://developer.and…

【C++ 初阶路】--- 类和对象(末)

目录 一、const成员1.1 取地址及const取地址操作符重载 二、再谈构造函数2.1 构造函数体赋值2.2 初始化列表2.3 explicit关键字 三、static成员3.1 概念3.2 特性 四、友元4.1 友元函数4.2 友元类 五、内部类六、匿名对象 一、const成员 将const修饰的“成员函数”称之为const成…

多行业预约门店服务小程序源码系统 支持多门店预约 带完整的安装代码包以及搭建教程

系统概述 该系统基于先进的云计算和大数据技术,采用模块化设计,具有高度的可扩展性和可定制性。无论是餐饮、美容美发、健身房还是其他服务行业,都可以通过该系统轻松实现多门店预约功能。同时,我们还提供了丰富的接口和插件&…

Appium+python自动化(二十九)- 模拟手指在手机上多线多点作战 - 多点触控(超详解)

简介 在网页中我们经常使用缩放操作来便利的查看具体的信息,在appium中使用MultiAction多点触控的类来实现。MultiAction是多点触控的类,可以模拟用户多点操作。主要包含加载add()和执行perform()两个方法. 问题思考 在使用地图App中,我们…

Embedding 、词嵌入、向量模型说的是一回事么?AI是如何理解世界?AI人不能不看的Embedding白话科普!

在AI理解世界的过程中,向量模型扮演着一个至关重要的角色,甚至可以说它是AI大模型用以构建和理解复杂数据的基础,也是对不同形态数据的一种标准化的“浓缩”。它能够将语言、图像、声音等多样化的信息,转化为一种通用的、数学化的…

基于51单片机的银行排队呼叫系统设计

一.硬件方案 本系统是以排队抽号顺序为核心,客户利用客户端抽号,工作人员利用叫号端叫号;通过显示器及时显示当前所叫号数,客户及时了解排队信息,通过合理的程序结构来执行排队抽号。电路主要由51单片机最小系统LCD12…

Vue-cli项目及Element UI 环境搭建 保姆级教程

一、Vue-cli介绍及其作用 什么是Vue-cli手脚架 vue-cli 官方提供的一个脚手架,用于快速生成一个 vue 的项目模板;预先定义 好的目录结构及基础代码,就好比咱们在创建 Maven 项目时可以选择创建一个 骨架项目,这个骨架项目就是脚…

手把手教你玩转AD9361数字调制解调系列(二) ----纯逻辑实现FSK信号的数字调制解调

因最近客户需求,用纯PL实现AD9361的数字信号调制解调,于是就把各种数字调制都在AD9361上都实现了一遍。优点就是:既可以在zynq系列上配置9361,也可以在纯FPGA系列配置9361。并且理解起来比较简单!!&#xf…

lidar3607.2 雷达点云数据处理软件功能介绍

LiDAR360 是北京数字绿土科技股份有限公司自主研发的点云后处理及行业应用软件。平台可处理 TB 级点云数据,并拥有 10 余种国际领先的点云处理及 AI 算法,推动激光雷达 的多行业应用。700 余项强大且灵活的功能,解决用户最后一公里的应用难题…

云仓是如何发展起来的?

1、电子商务的繁荣: 随着电商的兴起,对高效仓储和物流的需求越来越大。传统的仓储方式难以满足海量订单处理和快速配送的要求,因此需要一种更加灵活和高效的仓储解决方案。 ------------------------------------------------- 2、科技进步…