当前位置: 首页 > news >正文

《安富莱嵌入式周报》第346期:开源2GHz带宽,12bit分辨率,3.2Gsps采样率示波,开源固件安全分析器, 开源口袋电源,开源健康测量,FreeCAD

周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz!

视频:

https://www.bilibili.com/video/BV1TYBhYKECK/

《安富莱嵌入式周报》第346期:开源2GHz带宽,12bit分辨率,3.2Gsps采样率示波,开源固件安全分析器, 开源口袋电源,开源健康测量,FreeCAD


目录:

1、开源2GHz带宽,12bit分辨率,3.2Gsps采样率示波器
2、开源嵌入式固件安全分析器
3、TI分享的8通道隔离 ±12.288 V 模拟采集参考设计,符合涌瞬态抗扰度 EN 61000-4-5 2 类标准(±1 kV,24 A)
4、C编译器原理书籍
5、FreeCAD V1.0版本发布
6、两年未更新的FatFS发布V0.15a版本
7、开源USB Type-C口袋电源,支持3.3 -20 V,最大5 A
8、IDE相关
(1)Embedded Studio发布V8.20版本
(2)新唐自家所有M内核芯片免费使用MDK专业版,授权到2027年9月
9、【实测】使用STM32H7板子FatFS文件系统每秒读写2MB文件,实时写入7450个文件不出错,写满16GB SD卡
10、开源血压信号,PPG,ECG,听诊信号测量设备
11、H7-TOOL本周进展
(1)脱机烧录
         增加NXP车轨芯片S32K312脱机烧录支持
         增加英飞凌车轨芯片CYT4B和CYT3B脱机烧录支持
        增加航顺HK32C030系列
(2)加紧H7-TOOL的LUA API手册制作,与2.27版本固件同时发布


1、开源2GHz带宽,12bit分辨率,3.2Gsps采样率示波器

软件和硬件全开源

这个是早期Haasoscope开源项目的升级版,不过这次升级与之前版本已经没有任何关系,只是示波器名字没变。但性能是质的飞跃

GitHub - drandyhaas/HaasoscopePro: An Affordable 2 GHz 3.2 GS/s 12 bit open-source open-hardware expandable USB oscilloscope
https://www.crowdsupply.com/andy-haas/haasoscope-pro

软硬件软件包:HaasoscopePro-main.zip (292.75MB)

2GHz探头软件包:  oshw-active-probe-master.zip (3.94 MB)

效果:

规格:

两个设备同步,可以做到6.4Gsps采样率

由于示波器带宽比较高,普通探头是无法满足需求的,所以专门设计了一个2GHz带宽探头


2、开源嵌入式固件安全分析器

GitHub - e-m-b-a/emba: EMBA - The firmware security analyzer

EMBA 会自动发现固件中可能存在的弱点和漏洞。例如,不安全的二进制文件、旧的和过时的软件组件、可能易受攻击的脚本或硬编码的密码。EMBA 是一个命令行工具,可以生成易于使用的 Web 报告以供进一步分析

视频效果:

https://www.armbbs.cn/forum.php?mod=viewthread&tid=126614

有详细的文档说明:

Home · e-m-b-a/emba Wiki · GitHub


3、TI分享的8通道隔离 ±12.288 V 模拟采集参考设计,符合涌瞬态抗扰度 EN 61000-4-5 2 类标准(±1 kV,24 A)

 设计指南.pdf (1.64 MB)

 原理图.pdf (1.67 MB)

TIDA-00764 reference design | TI.com

此参考设计是具有 8 个通道的高压模拟输入模块。每个通道都可用于电压和电流测量。该设计使用 16 位模数转换器 (ADC) ADS8681,可处理 ±12.288 V 的输入电压。此外,该设计的四个通道能够处理高达 ±160 V 的共模电压。因此,用户无需担心接地回路或补偿电流在连接的输入之间流动。

±12.288 V 的高压输入
每个通道的电压和电流测量
4 个通道,共模电压高达 ±160 V
-85dB 的邻道串扰抑制
100 MΩ 输入阻抗
浪涌瞬态抗扰度符合 EN 61000-4-5 2 类标准(±1 kV,24 A)


4、C编译器原理书籍

有助于深入了解C以及编译原理

 Modern Compiler Implementation in C.pdf (5.17 MB)

https://github.com/ethanhe42/Mod ... on-in-C/tree/master

每个章节配套例题


5、FreeCAD V1.0版本发布

FreeCAD Version 1.0 Released | Hackaday

经过 22 年的发展,FreeCAD 终于达到了 1.0 版的里程碑

各大平台都提供了下载

视频:

https://www.armbbs.cn/forum.php?mod=viewthread&tid=126614


6、两年未更新的FatFS发布V0.15a版本

http://elm-chan.org/fsw/ff/

上一次更新还是2022年的11月份.

 ff15a.zip

ffsample.zip

更新记录:


7、开源USB Type-C口袋电源,支持3.3 -20V,最大5A

GitHub - CentyLab/PocketPD: Opensource firmware for PocketPD
https://www.crowdsupply.com/centylab/pocketpd

电压和电流可调,电压支持3.3V-20V,单步50mV可调。电流1A-5A可调,单步50mA可调。

规格


8、IDE相关

1、Embedded Studio发布V8.20版本

SEGGER - The Embedded Experts - Downloads - Embedded Studio

2、新唐自家所有M内核芯片免费使用MDK专业版,授权到2027年9月

各家芯片厂商都在折腾GCC + eclipse/vscode免费方案的时候,新唐不折腾这些了,直接让大家免费使用MDK。

新闻如下:

Keil MDK Nuvoton Edition – Full Cortex-M - Nuvoton

Arm 与新唐科技为软件开发者提供免费的Keil® MDK专业工具:Keil MDK Nuvoton Edition - Full Cortex-M,此服务可支持所有基于 Arm® Cortex-M 处理器为内核的新唐产品,包括 Arm Cortex-M0/M0+/M23/M33/M4/M55/M7/M85,并可用于商业用途。

此服务亦包含 Arm Keil MDK v6 提供的所有工具和软件套件,包括 Arm C/C++ 编译程序、Arm Keil Studio Pack - the Visual Studio Code extensions、Keil µVision 与除错环境。

此免费服务的使用范围仅适用于 Keil MDK 5.37(含) 或更高的版本,并且仅支持 Arm Compiler 6。

安装说明:

Keil Download - Nuvoton


9、【实测】使用STM32H7板子FatFS文件系统每秒读写2MB文件,实时写入7450个文件不出错,写满16GB SD卡

【测试平台】

STM32-V7开发板

【测试例子】

【安富莱】STM32H7用户手册发布,重在BSP驱动包设计方法,HAL库的框架学习,授人以渔,更新至95章(2024-05-06) - STM32H7 - 硬汉嵌入式论坛 - Powered by Discuz!

V7-025_FatFS文件系统例子(SD卡 V1.2)

【测试条件和校验】

运行例子里面的命令6,命令6是个测速函数,每次写入2MB文件,同时读取出来校验,保证写入的没问题。

/*
*********************************************************************************************************
*        函 数 名: WriteFileTest
*        功能说明: 测试文件读写速度
*        形    参:无
*        返 回 值: 无
*********************************************************************************************************
*/
static void WriteFileTest(void)
{FRESULT result;char path[64]; uint32_t bw;uint32_t i,k;uint32_t runtime1,runtime2,timelen;uint8_t err = 0;static uint32_t s_ucTestSn = 0;for (i = 0; i < sizeof(g_TestBuf); i++){g_TestBuf[i] = (i / 512) + '0';}/* 挂载文件系统 */result = f_mount(&fs, DiskPath, 0);                        /* Mount a logical drive */if (result != FR_OK){printf("挂载文件系统失败 (%s)\r\n", FR_Table[result]);}/* 打开文件 */sprintf(path, "%sS%05d.txt", DiskPath, s_ucTestSn++); /* 每写1次,序号递增 */      result = f_open(&file, path, FA_CREATE_ALWAYS | FA_WRITE);/* 写一串数据 */printf("开始写文件%s %dKB ...\r\n", path, TEST_FILE_LEN / 1024);runtime1 = bsp_GetRunTime();        /* 读取系统运行时间 */for (i = 0; i < TEST_FILE_LEN / BUF_SIZE; i++){result = f_write(&file, g_TestBuf, sizeof(g_TestBuf), &bw);if (result == FR_OK){if (((i + 1) % 8) == 0){printf(".");}}else{err = 1;printf("%s文件写失败\r\n", path);break;}}runtime2 = bsp_GetRunTime();        /* 读取系统运行时间 */if (err == 0){timelen = (runtime2 - runtime1);printf("\r\n  写耗时 : %dms   平均写速度 : %dB/S (%dKB/S)\r\n",timelen,(TEST_FILE_LEN * 1000) / timelen,((TEST_FILE_LEN / 1024) * 1000) / timelen);}f_close(&file);                /* 关闭文件*//* 开始读文件测试 */result = f_open(&file, path, FA_OPEN_EXISTING | FA_READ);if (result !=  FR_OK){printf("没有找到文件: %s\r\n", path);return;}printf("开始读文件 %dKB ...\r\n", TEST_FILE_LEN / 1024);runtime1 = bsp_GetRunTime();        /* 读取系统运行时间 */for (i = 0; i < TEST_FILE_LEN / BUF_SIZE; i++){result = f_read(&file, g_TestBuf, sizeof(g_TestBuf), &bw);if (result == FR_OK){if (((i + 1) % 8) == 0){printf(".");}/* 比较写入的数据是否正确,此语句会导致读卡速度结果降低到 3.5MBytes/S */for (k = 0; k < sizeof(g_TestBuf); k++){if (g_TestBuf[k] != (k / 512) + '0'){err = 1;printf("Speed1.txt 文件读成功,但是数据出错\r\n");break;}}if (err == 1){break;}}else{err = 1;printf("Speed1.txt 文件读失败\r\n");break;}}runtime2 = bsp_GetRunTime();        /* 读取系统运行时间 */if (err == 0){timelen = (runtime2 - runtime1);printf("\r\n  读耗时 : %dms   平均读速度 : %dB/S (%dKB/S)\r\n", timelen,(TEST_FILE_LEN * 1000) / timelen, ((TEST_FILE_LEN / 1024) * 1000) / timelen);}/* 关闭文件*/f_close(&file);/* 卸载文件系统 */f_mount(NULL, DiskPath, 0);
}

【实测】

1500个文件时:

5100个文件时:

写满SD卡,特别注意,但SD卡还剩下一点空间的时候,比如200M时,建议停止再写入,防止写爆后损坏SD卡

10、开源血压信号,PPG,ECG,听诊信号测量设备

之前给大家分享多款这种开源,本次再为大家分享一款

https://github.com/MilosRasic98/ ... gnalMeasuringDevice

软硬件全部开源,包括3D打印的所有 CAD 文件以及数据分析的测试结果。该项目的主要目标是能够记录、存储和分析这些信号。

11、H7-TOOL本周进展

H7-TOOL详细介绍:https://www.armbbs.cn/forum.php?mod=viewthread&tid=89934

1、脱机烧录

(1)增加NXP车轨芯片S32K312脱机烧录支持

(2)增加英飞凌车轨芯片CYT4B和CYT3B脱机烧录支持

详细说明:时隔半年,再次死磕,成功搞定H7-TOOL脱机烧录英飞凌车规级M7多核芯片CYT4B

时隔半年,再次死磕,成功搞定H7-TOOL脱机烧录英飞凌车规级M7多核芯片CYT4B,凌晨发帖纪念(2024-11-21) - H7-TOOL开发工具 - 硬汉嵌入式论坛 - Powered by Discuz!

(3)增加航顺HK32C030系列

2、加紧H7-TOOL的LUA API手册制作,与2.27版本固件同时发布

争取下个月初2.27版本固件发布时,同时发布LUA API手册,方便大家查阅

相关文章:

《安富莱嵌入式周报》第346期:开源2GHz带宽,12bit分辨率,3.2Gsps采样率示波,开源固件安全分析器, 开源口袋电源,开源健康测量,FreeCAD

周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频&#xff1a; https://www.bilibili.com/video/BV1TYBhYKECK/ 《安富莱嵌入式周报》第346期&#xff1a;开源2GHz带…...

Spring ApplicationListener监听

【JavaWeb】Spring ApplicationListener-CSDN博客 ApplicationEvent以及Listener是Spring为我们提供的一个事件监听、订阅的实现&#xff0c;内部实现原理是观察者设计模式&#xff0c;设计初衷也是为了系统业务逻辑之间的解耦&#xff0c;提高可扩展性以及可维护性。事件发布…...

蓝桥杯练习题

目录 1.劲舞团 2.数字诗意 3.封闭图形个数 4.回文数组 欢迎 1.劲舞团 0劲舞团 - 蓝桥云课 #include <iostream> using namespace std; int main() {int num1,M0;long long c[1000000];int cnt0;string a,b ;while(cin>>a>>b>>c[cnt])//系统自动输入…...

【JAVA】Java高级:Java中的常用设计模式——设计模式的基本思想与应用场景

在软件开发中&#xff0c;设计模式是一种被反复使用的解决特定问题的最佳实践。它们提供了一种标准化的方式来解决常见的设计问题&#xff0c;使得代码更具可读性、可维护性和可扩展性。特别是在Java开发中&#xff0c;设计模式的使用可以极大地提高代码的质量和开发效率。 设…...

QT 跨平台实现 SSDP通信 支持多网卡

一.多网卡场景 在做SSDP通信的时候,客户端发出M-search命令后, 主机没有捕捉到SSDP的消息,你可以查看下,是不是局域网下,既打开了wifi,又连接了本地网络,mac os下很容易出现这种场景。此时,我们发送消息时,需要遍历所有网卡并发送M-search命令。 二.QT相关接口介绍 1…...

疑难Tips:NextCloud域名访问登录时卡住,显示违反内容安全策略

[ 知识是人生的灯塔,只有不断学习,才能照亮前行的道路 ] 1使用域名访问Nextcloud用户登录时卡住,显示违反内容安全策略 我使用官方Docker镜像来部署NextCloud 28.0.5,并通过Openresty反向代理Nextcloud,但是在安装后无法稳定工作,每次登录后,页面会卡死在登录界面,无法…...

区块链:非对称加密

在区块链技术中&#xff0c;非对称加密是一项核心技术&#xff0c;用于保障数据的安全性和用户的隐私。它通过公钥和私钥的配合&#xff0c;实现了信息加密、解密、身份验证和数字签名等功能。 1. 非对称加密的基本原理 非对称加密使用两个密钥&#xff1a; 公钥&#xff1a…...

量子安全与经典密码学:一些现实方面的讨论

量子安全与经典密码学 背景&#xff1a;量子安全与经典密码学量子计算对传统密码学的威胁 安全性分析经典密码学的数学复杂性假设**量子密码学的物理不可克隆性假设** **性能与实现难度**后量子算法在经典计算机上的运行效率**量子通信设备的技术要求与成本** **可扩展性与适用…...

WordCloud参数的用法:

-------------词云图集合------------- 用WordcloudPyQt5写个词云图生成器1.0 WordCloud去掉停用词&#xff08;fit_wordsgenerate&#xff09;的2种用法 通过词频来绘制词云图&#xff08;jiebaWordCloud&#xff09; Python教程95&#xff1a;去掉停用词词频统计jieba.toke…...

数据库(总结自小林coding)|索引失效的场景、慢查询、原因及如何优化?undo log、redo log、binlog 作用、MySQL和Redis的区别

数据库&#xff08;总结自小林coding&#xff09;|索引失效的场景、慢查询、原因及如何优化&#xff1f;undo log、redo log、binlog 作用、MySQL和Redis的区别 说一下索引失效的场景&#xff1f;什么是慢查询&#xff1f;原因是什么&#xff1f;可以怎么优化&#xff1f;undo …...

(计算机组成原理)期末复习

第一章 计算机的基本组成&#xff1a;硬件软件&#xff08;程序&#xff09;计算机系统 软件有系统软件&#xff08;系统管理工具&#xff09;&#xff0c;应用软件 计算机硬件&#xff1a;包括主机和外设&#xff0c;主机包括CPU和内存&#xff0c;***CPU由运算器和控制器所组…...

Linux下一次性关闭多个同名进程

要一次性关闭多个同名的 Python 进程&#xff0c;例如&#xff1a; 你可以使用以下几种方法。在执行这些操作之前&#xff0c;请务必确认这些进程确实是你希望终止的&#xff0c;以避免意外关闭其他重要的进程。 方法一&#xff1a;使用 pkill 命令 pkill 是一个用于根据名称…...

Android显示系统(01)- 架构分析

一、前言&#xff1a; Android是基于Linux的&#xff0c;而显示设备的驱动也都是和Linux普通设备一样去管理&#xff0c;也就是说归根结底还是要按照Linux的方式组织数据送给LCD&#xff0c;因此&#xff0c;我们理解Android设计的这一套复杂的显示系统时候&#xff0c;一定要…...

Bean的生命周期详解保姆级教程,结合spring boot和spring.xml两种方式讲解,5/7/10大小阶段详细分析

文章目录 Spring Bean的生命周期一、为什么知道 Bean 的生命周期&#xff1f;二、生命周期大致了解三、详细分析生命周期3.1 ① 初步划分为 5 步&#xff1a;3.1.1 spring 框架中怎么理解3.1.2 spring boot 项目中怎么理解 3.2 ② 细分 5 步为 7 步&#xff1a;3.2.1 spring 框…...

2024年11月26日Github流行趋势

项目名称&#xff1a;v2rayN 项目维护者&#xff1a;2dust yfdyh000 CGQAQ ShiinaRinne Lemonawa 项目介绍&#xff1a;一个支持Xray核心及其他功能的Windows和Linux图形用户界面客户端。 项目star数&#xff1a;70,383 项目fork数&#xff1a;11,602 项目名称&#xff1a;fre…...

分页/列表分页

分页和单列表差不多,只是多加了点数据 一 : 实体类 1. 原生实体类 和 2.vo实体类 vo实体类包含原生实体类的所有字段 再新字段 原生(数据库里的字段) vo(多条件查询字段 ,分页字段) 分页字段 : private Integer pageNum1 //起始页 private Integer pageSize 4 //显示页数…...

微信小程序学习指南从入门到精通

&#x1f5fd;微信小程序学习指南从入门到精通&#x1f5fd; &#x1f51d;微信小程序学习指南从入门到精通&#x1f51d;✍前言✍&#x1f4bb;微信小程序学习指南前言&#x1f4bb;一、&#x1f680;文章列表&#x1f680;二、&#x1f52f;教程文章的好处&#x1f52f;1. ✅…...

STM32外设应用

STM32系列单片机是由意法半导体(STMicroelectronics)推出的一款基于ARM Cortex-M内核的32位微控制器。STM32以其高性能、低功耗、丰富的外设接口以及灵活的应用场景,广泛应用于嵌入式系统中。STM32的外设功能非常强大,几乎涵盖了大多数常见嵌入式开发所需的硬件接口。本篇文…...

Vue进阶面试题目(一)

Vue 自定义事件中&#xff0c;父组件如何接收子组件传递的多个参数? 在 Vue 中&#xff0c;子组件可以通过 $emit 方法触发自定义事件&#xff0c;并传递参数。父组件可以通过监听这个事件来接收参数。如果子组件需要传递多个参数&#xff0c;可以将这些参数作为数组或对象传…...

人工智能——大语言模型

5. 大语言模型 5.1. 语言模型历史 20世纪90年代以前的语言模型都是基于语法分析这种方法&#xff0c;效果一直不佳。到了20世纪90年代&#xff0c;采用统计学方法分析语言&#xff0c;取得了重大进展。但是在庞大而复杂的语言信息上&#xff0c;基于传统统计的因为计算量巨大…...

每天五分钟机器学习:支持向量机数学基础之超平面分离定理

本文重点 超平面分离定理(Separating Hyperplane Theorem)是数学和机器学习领域中的一个重要概念,特别是在凸集理论和最优化理论中有着广泛的应用。该定理表明,在特定的条件下,两个不相交的凸集总可以用一个超平面进行分离。 定义与表述 超平面分离定理(Separating Hy…...

树链剖分(重链剖分)

树链剖分的核心思想就是将一棵树剖分成一条一条的链 因为树不好处理 但链比较好处理 为了学会它 我们先要学会树上dfs&#xff08;深度优先搜索&#xff09; 然后就没了&#xff08;雾&#xff09; Because 树链剖分需要用到两个dfs 哦对了 我们还要了解以下的知识点 1.子…...

Spring Boot 开发环境搭建及示例应用

文章目录 1. 准备开发工具安装 JDK安装 IDE安装 Maven 2. 创建 Spring Boot 项目使用 Spring Initializr 创建项目导入项目到 IDE 3. 编写代码主类创建控制器创建实体类创建仓库接口创建服务类创建控制器 4. 配置文件5. 运行应用程序6. 测试应用程序7. 调试与优化8. 部署应用 1…...

网站布局编辑器前端开发:设计要点与关键考量

一、设计说明 &#xff08;一&#xff09;功能模块 可视化操作区域 这是用户进行网站布局设计的主要画布。通过拖放各种页面元素&#xff08;如文本框、图片、按钮、导航栏等&#xff09;到该区域&#xff0c;用户能够直观地构建网站页面的布局结构。支持对元素的实时缩放、旋…...

网络编程第一课

0voice第一课 https://github.com/0voice 今日学习&#xff1a;网络通信IO 网络通信的核心是通过系统提供的socket套接字实现的。socket和c语言中文件操作的本质类似&#xff0c;在c语言中&#xff0c;通过fopen、fclose、fread、fwrite实现了对文件的操作&#xff0c;socket…...

关于网络安全攻防知识

DNS 劫持 什么是DNS劫持&#xff1f; DNS劫持又叫域名劫持&#xff0c;&#xff08;劫持了路由器或域名服务器等&#xff09;&#xff0c;篡改了域名的解析结果&#xff0c;使得指向该域名的IP指向IP&#xff0c;你想访问正经网站结果给你跳到一个不正经的网站&#xff0c;实现…...

途普科技企业知识中台完成华为昇思MindSpore技术认证

近日&#xff0c;北京途普科技有限公司&#xff08;以下简称“途普科技”&#xff09;作为华为昇腾大模型方向的应用软件伙伴&#xff0c;核心产品企业知识中台已成功与华为AI框架昇思MindSpore完成相互兼容性认证。这一成就标志着途普科技在AI领域与华为的合作进一步加深&…...

等保测评在云计算方面的应用讲解

等保测评&#xff08;信息安全等级保护测评&#xff09;在云计算方面的应用主要聚焦于如何满足等级保护相关要求&#xff0c;并确保云计算平台及其上运行的业务系统的安全性。以下是主要内容的讲解&#xff1a; 1. 云计算中的等保测评概述 等保测评是在我国网络安全等级保护制…...

【PTA】【数据库】【SQL命令】编程题2

数据库SQL命令测试题2 测试题目录 10-1 查询“李琳”老师所授课程的课程名称10-2 查询成绩比所有课程的平均成绩高的学生的学号及成绩10-3 创建带表达式的视图StuView10-4 从视图PerView中查询数据10-5 查询工资高于在“HR”部门工作的所有员工的工资的员工信息10-6 查询选修的…...

flask请求头回显的学习和探究如何进行错误页面污染回显

请求头 首先我们要了解一些flask的请求和响应是利用了什么。 flask的请求和响应主要利用了werkzeug&#xff0c;那么我们就要先了解一下什么是werkzeug&#xff0c;其结构又是什么。 werkzeug是一个基于python开发的一个web工具包&#xff0c;其是flask的核心组件之一。其功能…...

Node.js的url模块与querystring模块

新书速览|Vue.jsNode.js全栈开发实战-CSDN博客 《Vue.jsNode.js全栈开发实战&#xff08;第2版&#xff09;&#xff08;Web前端技术丛书&#xff09;》(王金柱)【摘要 书评 试读】- 京东图书 (jd.com) 4.3.1 http模块——创建HTTP服务器、客户端 要使用http模块&#xff0…...

Spring框架使用xml方式配置ThreadPoolTaskExecutor线程池,并且自定义线程工厂

一、自定义线程工厂 自定义线程工厂需要实现java.util.concurrent.ThreadFactory接口&#xff0c;重写newThread方法。 示例代码&#xff1a; package com.xiaobai.thread;import org.apache.log4j.Logger;import java.util.concurrent.ThreadFactory; import java.util.conc…...

自动化的内存管理技术之垃圾回收机制-JavaScript引用数据内存回收机制

垃圾回收机制&#xff08;Garbage Collection, GC&#xff09; 是一种自动化的内存管理技术&#xff0c;用于回收程序中不再使用的内存空间&#xff0c;避免内存泄漏。JavaScript&#xff08;尤其是 V8 引擎&#xff09;使用了一些经典的垃圾回收算法&#xff0c;如 标记-清除 …...

如何使用MySQL实现多租户架构:设计与实现全解析

项目背景 在现代SaaS&#xff08;软件即服务&#xff09;应用中&#xff0c;多租户架构是一种常见的设计模式。多租户架构能够让多个客户&#xff08;租户&#xff09;共享同一个应用实例和数据库资源&#xff0c;而不会相互干扰。在实际的业务场景中&#xff0c;采用多租户架…...

Flink学习连载文章8--时间语义

Time的分类 (时间语义) EventTime:事件(数据)时间,是事件/数据真真正正发生时/产生时的时间 IngestionTime:摄入时间,是事件/数据到达流处理系统的时间 ProcessingTime:处理时间,是事件/数据被处理/计算时的系统的时间 EventTime的重要性 假设&#xff0c;你正在去往地下停…...

jvm核心组件介绍

1. 类加载器&#xff08;ClassLoader&#xff09;&#xff1a; • 想象它是一个快递员&#xff0c;负责把Java类&#xff08;.class文件&#xff09;这个“包裹”从磁盘这个“发货地”送到JVM内部这个“目的地”。类加载器确保每个类只被加载一次&#xff0c;并维护一个类的层级…...

【WEB开发.js】getElementById :通过元素id属性获取HTML元素

getElementById 是 JavaScript 中常用的一个 DOM 方法&#xff0c;用于通过元素的 id 属性获取文档中对应的 HTML 元素。这个方法返回的是一个包含该元素的引用&#xff0c;如果没有找到指定的元素&#xff0c;则返回 null。 语法&#xff1a; document.getElementById(id);i…...

java基础知识(Math类)

引入&#xff1a;Math 类包含用于执行基本数学运算的方法&#xff0c;如初等指数、对数、平方根 import java.util.Math 1.abs绝对值 int abs Math.abs(-9); 2.pow求幂 double pow Math.pow(2,4); 3.向上取整 double ceil Math.ceil(3.9);//ceil 4 4.向下取整 dou…...

图像分割——区域增长

一 区域增长 图像灰度阈值分割技术都没有考虑到图像像素空间的连通性。区域增长法则正好相反,顾及像素的连接性. 方法&#xff1a;1&#xff09;选择一个或一组种子&#xff1b; 2&#xff09;选择特征及相似性判决准则&#xff1b; 3&#xff09;从该种子开始向外生长&#x…...

JavaScript中的构造函数(工厂函数)以及部分包装类

创建对象 1.1 工厂函数 我们来思考一个问题&#xff1a;如果需要在开发中创建一系列的相似对象&#xff0c;我们应该如何操作呢 比如下面的例子 游戏中创建一系列的英雄&#xff08;英雄具备的特性是相似的&#xff0c;比如都有名字&#xff0c;技能&#xff0c;价格&#xff…...

三维地形图计算软件(三)-原基于PYQT5+pyqtgraph旧代码

最先入手设计三维地形图及平基挖填方计算软件时&#xff0c;地形图的显示方案是&#xff1a;三维视图基于pyqtgraph.opengl显示和二维视图基于pyqtgraph的PlotWidget来显示地形地貌&#xff0c;作到一半时就发现&#xff0c;地形点过多时&#xff0c;将会造成系统卡顿(加载时主…...

MATLAB 中有关figure图表绘制函数设计(论文中常用)

在撰写论文时&#xff0c;使用 MATLAB 导出的图像常常因大小和格式不统一&#xff0c;导致投稿时编辑部频繁退稿&#xff0c;要求修改和调整。这不仅浪费时间&#xff0c;也增加了工作量。为了减少这些麻烦&#xff0c;可以在 MATLAB 中导出图像时提前设置好图表的大小、格式和…...

Android adb shell dumpsys audio 信息查看分析详解

Android adb shell dumpsys audio 信息查看分析详解 一、前言 Android 如果要分析当前设备的声音通道相关日志&#xff0c; 仅仅看AudioService的日志是看不到啥日志的&#xff0c;但是看整个audio关键字的日志又太多太乱了&#xff0c; 所以可以看一下系统提供的一个调试指令…...

网络工具-nc(Netcat)

介绍 nc&#xff08;Netcat&#xff09;是一个功能强大的网络工具&#xff0c;通常被称为“网络中的瑞士军刀”。它能够进行网络调试、分析以及简单的服务器和客户端操作。nc 支持多种协议&#xff0c;尤其是 TCP 和 UDP&#xff0c;广泛用于网络诊断、端口扫描、数据传输等任…...

8:00面试,8:06就出来了,问的问题有点变态。。。

在职业生涯的旅途中&#xff0c;我们总会遇到各种意想不到的挑战和转折。我从一家小公司跳槽至另一家公司&#xff0c;原以为能够迎接全新的工作环境和机遇&#xff0c;却未曾料到&#xff0c;等待我的是一场职场风暴。 新公司的加班文化让我倍感压力&#xff0c;虽然薪资诱人…...

【前端】ES6基础

1.开发工具 vscode地址 :https://code.visualstudio.com/download, 下载对应系统的版本windows一般都是64位的 安装可以自选目录&#xff0c;也可以使用默认目录 插件&#xff1a; 输入 Chinese&#xff0c;中文插件 安装&#xff1a; open in browser&#xff0c;直接右键文件…...

C语言中const char *字符进行切割实现

将127.0.0.1以“”“.”来进行切割&#xff0c;实现如下&#xff1a; const char * ip "127.0.0.1";char *test new char[100];strcpy(test, ip);const char *split ".";char *final;final strtok(test, split);while (final){printf("%s\n"…...

探索Python网络请求新纪元:httpx库的崛起

文章目录 **探索Python网络请求新纪元&#xff1a;httpx库的崛起**第一部分&#xff1a;背景介绍第二部分&#xff1a;httpx库是什么&#xff1f;第三部分&#xff1a;如何安装httpx库&#xff1f;第四部分&#xff1a;简单的库函数使用方法1. 发送GET请求2. 发送POST请求3. 超…...

25A物联网微型断路器 智慧空开1P 2P 3P 4P-安科瑞黄安南

微型断路器&#xff0c;作为现代电气系统中不可或缺的重要组件&#xff0c;在保障电路安全与稳定运行方面发挥着关键作用。从其工作原理来看&#xff0c;微型断路器通过感知电流的异常变化来迅速作出响应。当电路中的电流超过预设的安全阈值时&#xff0c;其内部的电磁感应装置…...

openjudge- 简单英文题【12:Maximum Product of Sequence】

题目 12:Maximum Product of Sequence 总时间限制: 1000ms 内存限制: 65536kB 描述 Find a sequence of M positive numbers with the maximum product, while the sum of them is N. 输入 Two positive integers M (M < 10) and N (N < 100). 输出 One line contains …...