EPICS synApps介绍

news/2024/4/23 18:43:02/文章来源:https://blog.csdn.net/yuyuyuliang00/article/details/129217097

一、synApps是什么?

1) 一个用于同步束线用户的EPICS模块集合。

2) EPICS模块

alive, autosave, busy, calc, camac, caputRecorder, dac128V, delaygen, dxp, ip, ip330, ipUnidig, love, mca, measComp, modbus, motor, optics, quadEM, softGlue, sscan, std, vac, vme, xxx, softGlueZynq, iocZed

3)支持的子目录

documentation, configure, utils

二、synApps模块

1、模块包含了以下类型的支持:

1) 编译好的代码;库,例如:

  • 记录和设备支持
  • SNL(状态标记语言)程序
  • 字符串计算,数组计算引擎

2)EPICS数据库和autosave-reqeust文件

  • 数据库是一个用高级语言编写的程序。
  • 可以运行一个数据库的一个或多个副本,每个副本具有它自己的私有过程变量(PV's)
  • 数据库设计者推荐PV's按它们在一个.req文件中命名被自动存储。

3) 用于MEDM,caQtDM和CSS-BOY的显示文件

        默认的用户界面

4) 文档

        某些模块包含了iocBoot目录,基本用于测试

三、synApps包含的其它模块

  • areaDetector(ADCore和ADSupport以及各种面探测器模块)
  • asyn
  • ipac
  • seq
  • stream
  • devIocStats
  • allenBradley

四、alive

发送一个IOC的运行状态到一台服务器

1)环境变量

2)vxWorks启动参数

3)启动时间

五、autosave

1) 记录所选EPICS PVs的最新值;在ioc重启时,恢复那些值

  • 不是存档程序;仅保存最新值
  • 不要与saveData混淆,saveData记录扫描数据
  • 当包含一个PV's列表时,即使仅一个PV发生了变化,整个列表被记录。

2) 可以保存/恢复任何标量或数组值的PV

  • 数组值的PV必须被保存在进行恢复操作的IOC上(通常,ioc's仅保存/恢复它们自己的PV's)
  • DBF_MENU, DBF_ENUM PV's被由数值处理

3) 保存操作对标量使用通道访问。

4) 恢复操作对标量使用静态数据库访问

5) 用数据库访问保存和恢复数组。

6)用于保存文件的三个恢复选项:

        a) 在记录/设备初始化前

  • 电机位置必须在这时被恢复
  • 数组不能在此时被恢复
  • 在记录init前是DBF_NOACCESS的PV's不能再此时被恢复。

        b) 在记录/设备初始化后

  • 重写记录初始化的值
  • 链接字段不能在此时被恢复

        c) 在记录初始化前和后

  • 在两个时间恢复'auto_settings.sav'文件
  • 尝试在错误时间恢复一个PV是否一个错误
  • 如果你在此时恢复一个电机位置,你覆盖了从硬件读取的值,而不写入硬件

7) PV列表可以使用include文件(例如:<database_name>.req),包含路径。

  • 数据库开发者可以向数据库提供默认的include文件。
  • 用户可以用自定义include文件覆盖

8) 触发保存

  • 在列表中任何PV发生变边时
  • 周期地
  • 一个触发PV变化时
  • 手动

9) 用户可以重载保存设置

10) 重启,autosave可以从文件服务器恢复

        当前仅限vxWorks

11) 用户可以选择保存冗余文件

12) autosave通过EPICS PV's报告状态

13) 示例request文件

# PV名称
xxx:my_PV.VAL
xxx:my_array_PV.VAL# 关键字 include文件的名称 宏替换
file motor_settings.req P=$(P),M=m1...

14) 示例save文件

# save/restore V4.4 Automatically generated…
xxx:my_PV.VAL 1.0
xxx:my_array_PV.VAL @array@ { “0” “0.1” … “10.2” }
xxx:m1.DIR 0
xxx:m1.DHLM 100
xxx:m1.DLLM –100
...

15) configMenu支持手动保存/恢复

         几乎用于softGlue和scan配置

六、busy

        1)允许通道访问客户端和asyn驱动程序参与EPICS的结束报告

        2)记录

                a) busy,类似bo记录,但仅在VAL==0时,才执行转发链接(forward)

                b) 使用示例

七、calc

 支持计算在运行时输入的表达式

1) 记录

        a) acalcout:类似calcout,但也支持数组表达式;用于可以指定wait-for-completion。

        b) scalcout:类似calcout,但也支持字符串表达式;用于可以指定wait-for-completion。

        c) swait:类似calcout,但使用recDynLink(没有"PP MS"属性,并且等待结束)。

        d) transform:类似于共享一个PV数据池的16个calcout记录。

        e) sseq:类似base中的seq,但能够获取和写入字符串;用于可以指定wait-for-completion。

2) 其它代码

        a) 用于aSub记录的插值程序

        b) 用于sub记录的计算平均程序

        c) sseq-record编译器

3) 用于运行时编程的数据库,显示文件

  • userCalc, userCalcout
  • userStringCalc
  • userArrayCalc
  • userTransform
  • userStringSeq
  • userAve
  • interpolation

4) 所有calc表达式的示例可以在synApps MEDM帮助窗口中找到

八、CAMAC

1) 与CAMAC机箱/模块进行通信

2) 记录

        camac -- 用于实时camac控制的通用BCNAF/数据

 3) 支持的设备

  • VME总线适配器
  • CAMAC crate控制器
  • E500电机控制器
  • RTC-018实时时钟
  • QS-450四路scaler

九、caputRecorder

1) 支持记录和回放通道访问写入的序列

2)用于执行python函数的用户接口

十、configure

1) 配置在synApps中或者由synApps使用的所有模块

2) RELEASE

        指定指向EPICS base的以及指向每个模块synApps/support的版本号和文件路径。

3)makeReleaseConsistent.pl

  • 编辑synApps/support中每个模块的<module>/configure/RELEASE,使得符合synApps/support/configure/RELEASE
  • 在synApps/support中“make release”使得这个脚本运行。

十一、dac128V

dac128V IndustryPack模块的设备支持,数据库和窗口文件。

  • 8通道,12位DAC
  • 存在运行时手动或者根据编写的算法运行一个DAC通道的支持,或者作为一个扫描定位器,或者作为最多~10Hz的PID反馈查看的组成,或者作为最高~10KHz的快速PID反馈查看的组成。

十二、delaygen

对延时生成器的设备支持,数据库和窗口文件。

1) Standord Reseach System DG535和DG645数字延时生成器。

2)  Colby Instrument PDL 100A可编程延时线

3) 相关的同步辐射延时生成器

十三、documentation

顶层synApps文档

  • synApps是什么?
  • 如何部署它。
  • 如何构建它。
  • 如何从'xxx'示例模块产生一个用户程序。
  • 如何使得用户程序适配一个特定硬件

十四、dxp

1) XIA DXP和Saturn谱学系统的记录、设备支持,数据库和窗口文件。

2)用于设置DXP参数的dxp记录

3) 对mca记录的设备支持

十五、ip

很多基于消息的设备的设备支持、SNL代码,数据库和窗口文件。

1) 原先,用于通过InstrstryPack硬件支持的设备。

2) 注意,这个支持的某些将不可避免过时了,或者待定访问硬件用于测试。

deviceCmdReplay

1) 用于在运行时为一条命令/应答消息写支持

2)scalcout来格式化输出字符串

3) asyn记录来写/读设备

4) scalcout记录解析应答

devXxStrParm设备支持

新支持应该使用stream/asyn

十六、ip330

用于IP330 ADC InstrutryPack模块的设备支持,数据库和窗口文件。

16/32通道,16位 ADC

1) ip330Scan用于ADC通道的周期的,平均的读取

2) 对MCA记录ip330Sweep,用于在一个飞扫中使用ip330作为一个波形示波器,或者记录模拟数据。

3) ip330PID用于在快反馈循环中使用ip330

十七、ipUnidig

1) 对IPUnidig数字I/O IndustryPack模块的设备支持,数据库和窗口文件。

2) IP-UD-I 24通道输入/输出/中断模块

3) DIO316I 48位数字I/O模块

十八、love

对Love控制器的支持

  • 使用RS485 Octal串行IndustryPact模块,或者使用了232、485转换器的RS232模块。
  • 对ao,ai,bo,bi和mbbi记录的asyn设备支持
  • 用于Lovelink的asyn插值接口
  • 示例程序,数据库和窗口文件,仅限vxWorks和Linux
  • 提供了用于vxWorks和Linux的启动脚本来配置Ipac,asyn和插值接口。

十九、mca

1) 对多通道分析仪,多通道定标器和其它数组值探测器的支持。

2) mca记录

3) 设备支持

  • Canberra 556 AIM模块(MCA和ICB控制器)
  • DSA-2000以太网MCA
  • 用于谱学的各种Canberra-ICB模块
  • SIS 3801(Struck STR7201)和3820多通道定标器

二十、measComp

对Measurement Computing USB设备的支持

  • USB-CTR08 8通道计时/计数模块
  • USB-1608GX-2AO模拟I/O模块
  • USB-4303(过时)计数/计时模块

二十一、modbus

1) 对modbus协议的支持

  • 可编程逻辑控制器(PLCs)
  • 其它modbus设备,诸如温度控制器

2) 使用asyn支持各种通信链路

二十二、motor

1) motor记录和设备支持

  • 步进电机和伺服电机
  • 软电机支持:a) 放置一个电机"面孔",例如:一个DAC通道;b) 通过一个非线性转换驱动一个硬件电机
  • user/dial/raw坐标
  • 回程差消除算法
  • pre/post移动命令
  • 很多其它特性

2) 支持的电机类型

  • Oregon Micro Systems, Inc. (OMS) models; VME8, VME44, VME58, VS4, VX2, MAXv, PC68 and PC78.
  • Newport models MM3000, MM4000/5/6, PM500, ESP300/301/100 and XPSC8.
  • Schneider Electric (formally IMS) models IM483, MDrive and MForce.
  • Advanced Control Systems, Corp. model MCB-4B.
  • Mclennan models PM304 and PM600.
  • Physik Instrumente (PI) GmbH & Co. model C-630, C-844, C-848, C-862/863, E-662, E-710 and E-816.
  • MicroMo model MVP 2001 B02.
  • Micos model MoCo dc controller, SMC hydra controller.
  • Delta Tau PMAC2-VME controller.
  • Faulhaber MCDC2805 servo controller.
  • Parker Hannifin, Compumotor Division, 6K Series controllers.
  • New Focus, models; 8750 and 8752.
  • ACS Motion Control, SPiiPlus model.
  • Spectra-Physics, Encoder Mike Controller, Model 18011.
  • Thorlabs, Piezo Controller, Model MDT695.
  • Animatics Corporation SmartMotor.
  • piezosystem jena GmbH EDS data interface module.
  • Kohzu SC-200, SC-400, SC-800 stepper motor controllers.
  • attocube systems AG ANC150 Piezo Step Controller.
  • Aerotech Soloist single-axis servo controller, Ensemble multi-axis digital servo controller.
  • Hytec 8601 Industry Pack based 4-channel Stepper Motor Controller.

二十三、optics

1) 狭缝和镜子

  • 四个虚拟定位器;两个真实电机
  • 自动同步到电机位置
  • 报告结束

2) 单色器

非色散双晶

  • 几何:(Y1, Z2), (Y2, Z2)
  • 晶体品种:Si, Ge, 金刚石,Si(77K)
  • 米勒指数,可用的反射
  • 运行模式:a) Use/Set b) Manual/Auto
  • 管理垂直束线偏移
  • 自动同步到电机位置

球星栅格

  • 几何变量:a) 光栅密度;半径; b) 切线臂; c) 衍射级数  d) 输入/输出距离
  • 运行模式:a) Use/Set b) 手动/自动
  • 光栅条纹列表
  • 手动同步到电机位置

色散双晶

1) 几何:嵌套,对称

2) 晶体种类:Si, Ge, 钻石, Si(77K)

3) 米勒指数,可用的反射面

4) 运行模式:a) Use/Set b) Manual/Auto c) Theta1 / Theta1&2/ Rock Theta2

5) 适应入射光束角度偏移

6) 自动同步到电机位置

光学平台

1) Table记录支持一个6自由度的光学平台

2) 四种几何:SRI, GEOCARS, NEWPORT和PNC

3) user/client可以写任何到(x,y,z,thetax, thetay, thetaz)或者写到底层电机记录

4) 平台绕用户指定的点转动

5) 平台数据库包含一个由菜单选择的转动点的列表

6) 可以从电机位置恢复平台位置

7) 部分支持少于6个自由度

8) 几何:a)SRI  b)GeoCARS c)Newport d)PNC

 

9) 标定/sync:

  • Use/Set:更改到[X,Y,..]。移动平台/更改标定
  • Zero:重新定义当前[X,Y, ...]为0
  • Sync:从电机,更新[X,Y,...],遵守校准
  • Init:清除标定并且同步到电机

10) 平台记录设置电机速度,使得一起电机start/stop。

二十四、quadEM

支持4路输入的电表。

1) CAENels:AH401B, AH401D, AH501, AH501C和AH501D皮安表

2) APS四路电表

二十五、softGlue

支持基于FPGA的数字电子学

 

二十六、softGlueZynq

1) SoftGlue用于MicroZed和其它Zynq的基于FPGA的平台。

2) 在开发中。基本可以工作,但还未有中断支持。

3) 比SoftGlue更早来添加自定义组件。

4) analogProc是一个变体,它尝试成为一个SoftGlue。在非常初级的开发阶段。

5) 也见iocZed,它与synApps大部分剩下一起在*Zed平台部署softGlueZynq。

二十七、sscan

1) 支持用户编程的数据采集

  • sscan记录执行扫描
  • saveData保存数据到文件
  • recDynLink执行sscanRecord链接

2)一维扫描

a) 进行NPTS次

  • 设置条件:例如,移动电机;等待结束
  • 触发探测器:例如:启动scaler;等待结束
  • 采集数据:读取探测器信号;存入数组

b) 写数据到NFS文件

3) 多维扫描

a) 与1-D相同,但探测器触发器执行内层扫描

b) saveData监视一个sscan记录的集合,确定在扫描开始时扫描维度,并且按要求写数据。

4) 扫描特性

1) 三种1-D扫描类型:等步长,表格驱动,飞行

2)没有限制的数据点,扫描维度

3) 0-4个定位器,0-4个探测器触发器,0-70个探测器信号

4) 从scalar和一维数组值PV’s采集

5) 探测器/客户端等待,数据存储等待

6) 暂停/继续,取消

7) 双缓存:在下次1-D扫描过程中,可以写已经采集的一维数据

8) SaveData写自描述的XDR-格式(".mda")文件到NFS挂载的磁盘(目前,仅限vxWorks)

9) 一个定位器可以有私有的扫描参数(scanparm记录)。

10) 在扫描后操作包括移动到峰值,谷值和边沿

11) scanparm记录+扫描后操作=自动化1位对齐,因此,你可以容易地实现一个"对齐"按钮。

5) sscan记录

1) 执行1维扫描

2) 扫描前链接,可选的结束时回调

3) 定位器:任何可写,数值,标量的PV(菜单,枚举都可以)

4)探测器触发器:任何可读,数值,标量的或1D数组PV

5) 数组探测器:完全需要<scanRecord>.NPTS元素

6) 数组触发器:回调表示数组数据准备要读取

7)扫描后链接:可选的结束时回调

8) 暂停/继续

9) 取消(<scanRecord>.EXSC -> 0)等待回调,清理

10) (连续两次取消)杀死取消的回调

11) 与多个显示/数据采集客户端握手

12) 与数据存储客户端握手

6)与sscan记录一起使用的数据可视化工具

1) scanSee

2) dview, sview

3) utils/mdautils

4) utils/mdaExplorer

5) utils/mdaPythonUtils

二十八、std

1) Epid记录

        扩展的PID记录

2) Scaler记录

        用一个公共时钟,门和触发器控制一组计数器

3) 软电机数据库

        a) 运行时可编程的软电机/transform/hard-motor数据库

        b) 驱动一个电机经常一个非线性变换的快速方法

4) 四步数据库

        a) 一个最终计算最多4步(设置条件,读取数据)

        b) 原先维dichroism实验开发

5) PID控制

6) Femto电流放大器支持

7)genTweak, ramp_tweak

8) selector

9) pvHistory

10) Alarm clock, countdown timer

二十九、utils

1) changePrefix

             通过复制xxx模块更改EPICS前缀

2) changePrefixloc

           更改在一个ioc目录中所有文件的EPICS前缀

3) copyAdl

         找到MEDM-display文件;复制到指定目录。

4) mdaExplorer, mdaPythonUtils, mdautils-src

        显示,操作扫描数据(MDA)文件

5) snapDb

        "冻结"一个userCalcs集合成为一个自定义数据库,显示

6) Subversion utilites

        logModuleFromTag, releaseNotesFromTag, makeTar

三十、vac

支持真空测量和控制

1) vs, digitel记录

2) Granville-Phillips GP307, GP350

3)  Televac MM200, CC10

4) Digitel 500/1500

5) Gamma MPC, MPCe, LPC, SPC

三十一、vme

1) VME记录

  • 提供对VME总线的运行时访问
  • 对测试硬件好用
  • 一个不受支持的VME板卡的运行时编程控制

2) 对VME硬件的设备支持

  •  Joerger scaler

  • APS bunch-clock generator

  • APS machine-status interface

  • Heidenhain encoder interpolator

  • Generic A32 VME interface

  • HP Laser interferometer

  • VMI4116 16-bit DAC

  • Acromag 9440 16-bit digital input

三十二、xxx

1) 原型用户目录

  • 构建在synApps中所有东西成为一个装载模块
  • 包含装载/配置在synApps中几乎所有东西的命令文件
  • 包含示例顶层窗口文件
  • 包含设置环境变量以及启动示例用户接口的示例脚本
  • 包含用于所选VME和IndustryPack硬件的推荐地址/中断配置的表格

2) 使用这个模块的两种方式

a) 进行复制;运行changePrefix; 构建;自定义;运行一条束线

  • 这是推荐的用法
  • 详细说明在support/document

b) 引用/抓包 

三十三、iocZed

一个用于MicroZed的"xxx"模块

1) 构建在synApps中所有东西,已经展示它在MicroZed中Linux处理器上运行

2) 当前:alive, asyn, autosave, busy, calc, caputRecorder, iocStats, seq, softGlueZynq, sscan, std, stream

三十四、对于开发者:synApps的特性

1) 扩展的运行记录

        既不是同步也不是异步的记录

2) 结束时报告

        当通过ca_put_callback()被写时,所有数据库正确地表现。

3) recDynLink链接

        类似标准地EPICS链接,但没有"PP NMS"特性

4) GUI标准

        用于菜单,PV值,链接等地默认颜色

5) 协调运动

        在synApps中很多数据库(尤其在'optics'中)包含了若干电机的协调运行

6) 复杂数据库的初始化

        某些公共的EPICS初始化问题在各种synApps数据库中被处理。

三十六、协调运动

1) 示例情况:数据库(transform记录)

        狭缝,镜子,球星光栅单色器

2) 更复杂的情况:SNL代码

        多晶单色器

3) 非常复杂的情况:自定义记录

        光学平台,扫码

4) 标准一个有用的协调应该满足:

        a) 报告完成给ca_put_callback()

        b) 与CA客户端共享base定位器的控制

        c) 从base定位器的状态恢复状态

三十七、结束时报告

1) 在单个ioc中包含的数据库的简单规定

        在执行链中仅使用PP链接和转发(forward)链接

2) 数据库操作跨越多个ioc

        使用带put_callback链接的记录跨越iocs:

  •         带有异步设备支持的calcout
  • sscan, swait
  • sseq或sCalcout(.WAIT*=“Wait”

3) 在客户端执行部分操作的情况中

        a) 数据库通过PP或put_callback链接设置一个busy记录

        b) 当操作结束时CA客户端清除这个busy记录

4) 在部分操作是由一个CP链接驱动的情况中

        与以上没有不同;CP链接时一个CA客户端

三十八、复杂数据库的初始化

1) 初始值:.VAL vs .DOL

  • 大部分记录允许在数据库中设置.VAL字段
  • 注意:.DOL不能用于常量字符串

2)用记录/设备初始化的保存恢复和交换

  • 保存-恢复pass 0
  • 记录/设备初始化-->设备支持可以使用pass-0值
  • 保存-恢复pass 1 --> pass-1覆盖记录/设备-初始值

3) .PINI(在init时运行)使用和限制

        a) 这是数据库初始化的正常机制

        b) 如果你需要一个来自某个其它的.PINI初始化记录的值,而那个记录还未被运行?

        c) 注意:在.PINI运行中不考虑.PHAS

4) 与链接警报竞争

        a) 如果你有一个指向一个.UDF=1的记录的输入链接,你得到一个链接警报。

        b) 在一个记录运行前.UDF=1。(在3.14.1+,数据库可以指定.UDF)。

        c) transform记录在链接警报时可以取消执行。

5) CP链接的初始化问题

        a) 你有一个指向一个字段的CP链接,这个字段一个计算结果。

        b) 如果calc结果是与字段的初始值相同,你将有正确的值,但你将不知道你有正确的值,并且你将不直到确认要等多久。

        c) transform记录总是提交它的初始计算结果。

6) 可编程的初始化链接字段

        a) 必须用CA链接编写链接字段(因为锁集 recalc)

        b)在CA运行前.PINI运行

        c) 不能使用.PINI;从扫描任务驱动init;当init结束时,设置init记录为"Passive"。

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

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

相关文章

【蓝桥杯选拔赛真题38】python目标值判断 青少年组蓝桥杯python 选拔赛STEMA比赛真题解析

目录 python目标值判断 一、题目要求 1、编程实现 2、输入输出 二、解题思路

【牛客刷题专栏】0x0E:JZ6 从尾到头打印链表(C语言编程题)

前言 个人推荐在牛客网刷题(点击可以跳转)&#xff0c;它登陆后会保存刷题记录进度&#xff0c;重新登录时写过的题目代码不会丢失。个人刷题练习系列专栏&#xff1a;个人CSDN牛客刷题专栏。 题目来自&#xff1a;牛客/题库 / 在线编程 / 剑指offer&#xff1a; 目录前言问题…

CVE-2022-42889 Apache Commons Text 漏洞

0x00 前言 所幸遇到&#xff0c;就简单看看&#xff0c;其中没有啥比较难的地方&#xff0c;仅做记录。10月13日的漏洞。 cve链接可以看下面这个&#xff1a; https://cve.mitre.org/cgi-bin/cvename.cgi?nameCVE-2022-42889 git地址&#xff1a; https://github.com/apache…

前端进阶JS运行原理

JS运行原理 深入了解V8引擎原理 浏览器内核是由两部分组成的&#xff0c;以webkit为例&#xff1a; WebCore&#xff1a;负责HTML解析、布局、渲染等等相关的工作&#xff1b;JavaScriptCore&#xff1a;解析、执行JavaScript代码&#xff1b; 官方对V8引擎的定义&#xff1…

汇编指令学习(MOV,MOVSX,MOVZX,LEA,XCHG)

一、MOV指令1、将十六进制0x1234数值&#xff0c;赋值给eax寄存器mov eax,0x12342、将十六进制0x123数值&#xff0c;赋值给内存地址为ebxmov dword [ebx],0x1233、将edx的高八位赋值给eax的低八位ax&#xff0c;eax的低16位&#xff0c;al&#xff0c;eax的低8位&#xff0c;a…

(三)随处可见的LED广告屏是怎么工作的呢?接入GUI

续上文&#xff0c;本篇我们将尝试接入一个GUI来控制点阵屏。在前两篇中&#xff0c;我们相继介绍了点阵屏的控制原理&#xff0c;以及如何让点阵屏按照我们所想的进行显示。本篇将在此基础上接入一个GUI&#xff0c;使点阵屏的控制更加优雅。限于阅读体验和展示效果&#xff0…

深入理解border以及应用

深入border属性以及应用&#x1f44f;&#x1f44f; border这个属性在开发过程中很常用&#xff0c;常常用它来作为边界的。但是大家真的了解border吗&#xff1f;以及它的形状是什么样子的。 我们先来看这样一段代码&#xff1a;&#x1f44f; <!--* Author: syk 185901…

k8s环境jenkins发布vue项目指定nodejs版本

k8s环境jenkins发布vue项目指定nodejs版本1、背景2、分析3、解决方法3.1、 找到配置镜像位置3.2、 制作新镜像3.3、 推送镜像到私有仓库3.4、 修改配置文件1、背景 发布一个前端项目&#xff0c;它需要nodejs 16.9.0版本支持&#xff0c;而kubesphere 3.2.0集成的jenkins 的镜…

小米mix2s刷win11和android双系统

在给电脑安装系统的过程中&#xff0c;可能会因为各种原因出现windows无法安装的情况&#xff0c;我在给小米mix2s安装win11时发现出现了“计算机意外地重新启动或遇到错误&#xff0c;windows无法安装”的情况&#xff0c;下面就来教一下大家两种解决方法&#xff0c;希望可以…

【解决办法】windows防火墙出入站规则放通telnet方法

【操作方法】windows防火墙出站规则放通telnet方法一、出站规则1.新建出站规则中选择“程序”2.选择路径&#xff0c;点击“下一页”3.选择“允许连接”4.选择所有区域二、入站规则注&#xff1a;打开防火墙添加出入站规则参考【操作方法】windows防火墙添加出入站规则方法 一、…

JUC(二)

1.可重入锁–ReentrantLock原理 1.1.非公平锁的实现原理 1.1.1.加锁解锁流程 1>.先从构造器开始看,默认为非公平锁,可以在构造函数中设置参数指定公平锁 public ReentrantLock() {sync = new NonfairSync(); }public ReentrantLock

【C++】STL 模拟实现之 list

文章目录一、list 的常用接口及其使用1、list 一般接口2、list 特殊接口3、list 排序的性能分析二、list 迭代器的实现1、迭代器的分类2、list 迭代器失效问题3、list 迭代器源码分析4、list 迭代器模拟实现4.1 普通迭代器4.2 const 迭代器4.3 完整版迭代器三、list 的模拟实现…

十分钟学习nfs服务器

NFS服务器简介 NFS的使用 权限参数 简易实验配置一&#xff1a; 要求&#xff1a;客户端借用nfs服务器可以同步服务端的文件 步骤&#xff1a;服务端配置&#xff08;/var/lib/nfs日志存放目录&#xff09; 创建文件&#xff1a;&#xff08;主配置文件有可能存在&#x…

机器学习的特征归一化Normalization

为什么需要做归一化&#xff1f; 为了消除数据特征之间的量纲影响&#xff0c;就需要对特征进行归一化处理&#xff0c;使得不同指标之间具有可比性。对特征归一化可以将所有特征都统一到一个大致相同的数值区间内。 为了后⾯数据处理的⽅便&#xff0c;归⼀化可以避免⼀些不…

spring boot 配合element ui vue实现表格的批量删除(前后端详细教学,简单易懂,有手就行)

目录 一.前言&#xff1a; 二. 前端代码&#xff1a; 2.1.element ui组件代码 2.2删除按钮 2.3.data 2.4.methods 三.后端代码&#xff1a; 一.前言&#xff1a; 研究了其他人的博客&#xff0c;找到了一篇有含金量的&#xff0c;进行了部分改写实现前后端分离&#xff0…

频率信号转电压或电流信号隔离变送器0-1KHz /0-5KHz /0-10KHz转0-2.5V/0-5V/0-20mA

主要特性:>> 精度等级&#xff1a;0.2级>> 全量程内极高的线性度&#xff08;非线性度<0.1%&#xff09; >> 辅助电源/信号输入/信号输出&#xff1a; 2500VDC 三隔离>> 辅助电源&#xff1a;5VDC&#xff0c;12VDC&#xff0c;24VDC等单电源供电&g…

SpringBoot项目启动成功后打印Banner

SpringBoot项目启动成功后打印Banner 背景 可能有些同学看到就觉得&#xff0c;这个都要发文章&#xff1f;这不是整个banner.txt再配置一下spring.banner.locationclasspath:banner.txt就行了吗&#xff1f;还真不是&#xff0c;这个是在项目启动时&#xff0c;先打印的bann…

Big_Data

Linux 计算机硬件软件体系 冯 诺依曼体系结构 计算机处理的数据和指令一律用二进制数表示 顺序执行程序 计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部分组成计算机硬件组成 输入设备输入设备用来将人们熟悉的信息形式转换为机器能够识别的信息形式常见的…

人工智能写的十段代码,九个通过测试了

“抢走你工作的不会是 AI &#xff0c;而是先掌握 AI 能力的人” 编程测试 1. 我想用golang实现二叉树前序&#xff0c;请你帮我写一下代码。 // 定义二叉树节点 type TreeNode struct {Val intLeft *TreeNodeRight *TreeNode }// 前序遍历 func PreOrderTraversal(root *Tre…

Nvidia jetson nano硬件架构

资料来源 官方文档中心 https://developer.nvidia.com/embedded/downloads -> 选jetson -> Jetson Nano Product Design Guide //产品设计指导(入口) //-> 1.1 References 列出了相关的文档 -> Jetson Nano Developer Kit Carrier Board Specification //板子标注…