• 2025-01-12在keil中ARMCC v6 编译器中用C语言实现ARM cortex-M4 实现startup代码
    #include"stdint.h"#defineStack_Size0x00000800U#defineHeap_Size0x00000400Uuint8_tStack_Mem[Stack_Size]__attribute__((section("STACK")));uint32_t*const__initial_sp=(uint32_t*)&Stack_Mem[Stack_Size];uint8_tHeap_
  • 2024-11-29弱口令(Weak Password)总结和爆破工具
    弱口令定义网站管理、运营人员由于安全意识不足,为了方便、避免忘记密码等,使用了非常容易记住的密码,或者是直接采用了系统的默认密码等。攻击者利用此漏洞可直接进入应用系统或者管理系统,从而进行系统、网页、数据的篡改与删除,非法获取系统、用户的数据,甚至可能导致服务器
  • 2024-12-05充电设施建设如火如荼,如何利用充电桩管理方案对车辆进行智能化管理?
    城市停车位紧缺是长期以来的难题,加之部分停车场所出于利益因素以及部分车主不够“自律”,导致电动汽车充电车位常被燃油车占位。智能充电桩监管平台融合车辆检测、车牌识别、车辆结构化等技术,可对车辆的品牌型号、车牌、车牌颜色、其他固有特征等进行识别,可实现在以下场景的应用:1
  • 2024-12-01QHE5701 – Database Systems
    QHE5701–DatabaseSystems2024Lab–51Lab5:DesigningDatabaseandGeneratingsampledata(usingdatageneratortool)Inthislabyou’lluseMySQLtodesignandimplementadatabasefromuserrequirement.DatabaseSpecificationDetails:Inacompanyt
  • 2024-11-28企业融资
    ‌天使轮并不是为了准备上市,而是企业初创阶段的融资。‌‌12天使轮(AngelRound)是企业初创阶段的融资方式之一,通常发生在企业只有商业构想或初步产品原型时。天使投资者通常是富有的个人,他们愿意在企业早期阶段承担较高风险以换取未来可能的高回报。天使轮资金主要用于进一步的产
  • 2024-10-12RAII - std智能指针
    std智能指针智能指针的选择标准在类中使用智能指针作为成员变量。需要根据实际情况(主要是看所有权)原始指针:所有权:该资源对象不属于我,使用前提:资源对象被释放前,我理应必然已经被释放。否则会存在风险。unique_ptr:所有权:该对象仅仅属于我。被管理的资源对象的生
  • 2024-08-18基于STM32的寄存器实现点亮LED
    1.启动文件startup_stm32f103xe.s;********************(C)COPYRIGHT2017STMicroelectronics********************;*FileName:startup_stm32f103xe.s;*Author:MCDApplicationTeam;*Description:STM32F103xEDevicesvectort
  • 2024-08-07【iOS】SideTable
    目录SideTablesStripedMapSideTable1.spinlock_tslock2.RefcountMap3.weak_table_t总结objc4源码地址:SideTable&table=SideTables()[this];//获取对象的SideTablesize_t&refcntStorage=table.refcnts[this];SideTables查源码SideTables的结构如
  • 2024-08-06STM32启动文件,在启动文件中理解IAP
    ;********************(C)COPYRIGHT2017STMicroelectronics********************;*FileName:startup_stm32f103xe.s;*Author:MCDApplicationTeam;*Description:STM32F103xEDevicesvectortableforMDK-ARMtoolchain.;*
  • 2024-07-04JVM专题之G1垃圾收集器下
    索引(记录)的源码的工作流程图如下:CSet(CollectionSet回收集合)收集集合(CSet)代表每次GC暂停时回收的一系列目标分区。在任意一次收集暂停中,CSet所有分区都会被释放,内部存活的对象都会被转移到分配的空闲分区中。因此无论是年轻代收集,还是混合收集,工作的机制都是一致的。年轻
  • 2024-07-03聊聊C++20的三向比较运算符 `<=>`
    C++20标准引入了许多新特性,其中之一是三向比较运算符<=>,也被称为太空船运算符。这个新运算符为C++程序员提供了一种全新的比较对象的方式,它能有效简化比较逻辑,避免编写多个比较运算符重载的情况。为什么需要三向比较运算符?在C++20之前,如果要完整地定义一个类型的比较行为
  • 2024-06-17C++11智能指针 unique_ptr、shared_ptr、weak_ptr与定制删除器
    目录智能指针场景引入-为什么需要智能指针?内存泄漏什么是内存泄漏内存泄漏的危害内存泄漏分类如何避免内存泄漏智能指针的使用及原理RAII简易例程智能指针的原理智能指针的拷贝问题智能指针的发展历史std::auto_ptr模拟实现auto_ptr例程:这种方案存在的问题:Boost库中的智能指针
  • 2024-06-16C++智能指针
    std::unique_ptr:独特所有权模型,一个std::unique_ptr在同一时间内只允许有一个对象实例。它不允许被复制,但可以被移动。std::shared_ptr:共享所有权模型,多个std::shared_ptr可以指向同一对象,通过引用计数机制来管理对象的生命周期。当最后一个指向对象的std::shared_ptr被销毁时,对
  • 2024-06-04_weak c语言在实际使用中有什么核心作用
    C语言中__weak关键字的核心作用在C语言中,__weak关键字通常用于声明弱符号,它允许在链接阶段出现多个同名函数的情况下,选择性地指定某个函数具有较低的优先级。如果在代码中使用了__weak修饰的函数,并且在链接时没有找到其他同名的强符号函数,那么编译器会自动链接到这个弱符号函
  • 2024-05-31[论文阅读] Aligner@ Achieving Efficient Alignment through Weak-to-Strong Correction
    Pretitle:Aligner:AchievingEfficientAlignmentthroughWeak-to-StrongCorrectionsource:Arxiv2024paper:https://arxiv.org/abs/2402.02416code:https://aligner2024.github.io/ref:https://mp.weixin.qq.com/s/O9PP4Oc_Ee3R_HxKyd31Qg关键词:LLM,align,fin
  • 2024-05-30DVWA-Weak Session IDs
    用户登录之后,服务端会创建一个session,里面存储用户的状态和相关信息。而为了缓和客户端的存储压力,客户端只存储一个session_id,一般session_id放在cookie中。如果session_id被劫持,黑客可以使用其登录直接登录到目标账户。题目有点没看懂拿HighLevel举例,只拿到PHPSESSID就
  • 2024-05-28智能指针一些实现分析
    智能指针一些实现分析提供值传递但是指针语义的功能。通过指针占用并且对管理对象,在离开作用域时释放该对象。在使用上还有另外一个很好用的功能,精简了代码复杂度,管理的对象类可以省略以下的函数默认构造函数复制构造函数复制赋值函数比如有一个类Fd用于管理fd,并且拥
  • 2024-05-17UES-07-Set 和 Map
    之前的Set和Map对象模拟Set:letobj=Object.create(null);//创建的对象原型为nullobj.v=true;if(obj.v)//判断值是否存在模拟Map:letobj=Object.create(null);obj.key="value";letv=obj.key;//"value"变通方法问题对象使用的任何类型的属性(
  • 2024-04-25[题解]CF61E Enemy is weak
    CF61EEnemyisweak如下图,第\(i\)行\(j\)列表示第\(j\)个数结尾,向前长度为\(i\)的逆序子序列个数。递推方式见下图。第一行全为\(1\)。要填第\(2\)行的值,就往前找所有\(>\)当前元素的位置,把它们第\(1\)行的值加起来。要填第\(3\)行的值,就往前找所有\(>\)当前元素的位置,把
  • 2024-04-07C++智能指针学习——小谈引用计数
    目录前言控制块简介共享控制块引用计数与弱引用计数创建过程__shared_ptr__shared_count_Sp_counted_base弱引用计数增加过程再谈共享控制块__weak_count引用计数增加过程弱引用计数的减少过程弱引用计数减为0引用计数的减少过程引用计数减为0参考文章前言本文结合源码讨论std::
  • 2024-04-06智能指针详解
    目录自己管理指针会有什么潜在的问题智能指针的作用share_ptr(共享智能指针)初始化的方式shared_ptr获取原始指针weak_ptr(弱引用智能指针)初始化的方式use_count()expired()lock()reset()返回管理this的shared_ptr循环引用问题图释循环引用:​编辑解决方法:
  • 2024-04-03上电时间计算
    前言:CH573/582上电到运行第一个初始化的时间最快约53ms左右;592最快约22ms左右。注意将串口免按键功能关闭。思路:上电之后从启动文件启动,直接跳转到60M主频进行运行,然后在main函数中翻转io进行判断时间。测试工具,使用功耗计测试(可以看到上电的波形和运行到翻转io的波形)。代码
  • 2024-03-14为什么weak_ptr可以解决循环引用问题
    weak_ptr可以解决循环引用问题的主要原因在于它不会增加对象的引用计数,从而不会导致对象无法被销毁。在循环引用中,两个或多个对象相互持有对方的shared_ptr,导致对象的引用计数始终不为零,即使程序不再使用这些对象,它们也无法被销毁,从而造成内存泄漏。weak_ptr的引入可以打破这