内核 模式

一键部署可视化Linux内核与驱动调试环境

docker run -itd --privileged --name "linux-driver-debug-test" registry.cn-hangzhou.aliyuncs.com/loongenclave/linux-driver-debug:latest 哔哩哔哩视频 ......
内核 环境 Linux

访问者模式

访问者模式 案例引入 要求 1.将观众分为男生和女生,对歌手进行评价,当看完某个歌手表演后,对于歌手有不同的评价(评价的类别,有成功,失败等)。 传统方式实现思路 创建一个Person类,其有两个子类,分别是Man和WoMan,使用if else分支,去判断一个歌手的评价,成功对应成功分支,失败对应 ......
访问者 模式

保护模式下的存储管理

分段 段描述符 32位模式下,\(2^{32}bits=4GB\),起始地址用\(32bits\)表示,偏移用\(20bits\)表示,一页大小是\(4KB\),\(2^{20}\times 2^{12} = 2^{32}\),表示内存空间的某个位置最少用\(52bits\),实际上用\(64bit ......
模式

(system)ntoskrnl.exe是Windows操作系统的内核文件之一,也是整个操作系统的核心部分

ntoskrnl.exe是Windows操作系统的内核文件之一,也是整个操作系统的核心部分。它被称为Windows NT操作系统内核,是操作系统中最重要、最基础的部分之一。ntoskrnl.exe主要负责管理和控制计算机的各种硬件资源,包括处理器、内存、磁盘、输入输出设备等等。 ntoskrnl.e ......
系统 内核 ntoskrnl 核心 Windows

软件设计模式系列之二十——备忘录模式

备忘录模式是一种行为型设计模式,它允许我们在不暴露对象内部细节的情况下捕获和恢复对象的内部状态。这个模式非常有用,因为它可以帮助我们实现撤销、恢复和历史记录等功能。在本文中,我们将深入探讨备忘录模式的各个方面,包括定义、示例、结构、实现步骤、代码实现、典型应用场景、优缺点、类似模式以及小结。 ......
模式 设计模式 备忘录 软件

Spring中涉及的设计模式总结

一、简单工厂(非23种设计模式中的一种) 1、实现方式: BeanFactory。Spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得Bean对象,但是否是在传入参数后创建还是传入参数前创建这个要根据具体情况来定。 2、实质: 由一个工厂类根据传入的参数,动态决 ......
设计模式 模式 Spring

Ftp基础(二):被动模式与主动模式

Ftp即文件传输协议,说白了就是处理文件操作的。可能你还听说过Ftps、SFtp,简单说一下他们的区别吧 Ftps:可以理解为Ftp+Ssl,Ftp与Ftps的关系就类似Http和Https的关系 SFtp:可以理解为Ftp+SSH 总之,可以理解为Ftp就是明文传输,Ftps、SFtp采用了加密传 ......
模式 基础 Ftp

责任链模式

将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。 abstract class Handler { private Handler next; public void setNext(Handler next) { th ......
模式 责任

系统进入救援模式进行修复

现象: 解决方案: (1)# journalctl 查看原因 (2)可以看出是内存溢出导致进出救援模式,重启解决 # /sbin/reboot -f (3) 如果出现 mount failed 的现象,就需要进行 umount -l /dev/sdX 或者 umount -f /dev/sdX (4 ......
模式 系统

Go每日一库之118:netlink(内核通信)

# 什么是netlink? netlink 是 Linux 系统里用户态程序、内核模块之间的一种 IPC 方式,特别是用户态程序和内核模块之间的 IPC 通信。比如在 Linux 终端里常用的 ip 命令,就是使用 netlink 去跟内核进行通信的。例如想在golang代码中实现ip link a ......
内核 netlink 118

软件设计模式系列之十九——中介者模式

@目录1 模式的定义2 举例说明3 结构4 实现步骤5 代码实现6 典型应用场景7 优缺点8 类似模式9 小结 1 模式的定义 中介者模式是一种行为型设计模式,它用于降低对象之间的直接通信,通过引入一个中介者对象来管理对象之间的交互。这种模式有助于减少对象之间的耦合性,使系统更加可维护和扩展。中介者 ......
中介者 模式 设计模式 中介 软件

命令模式

命令模式 案例引入 要求 1.买了一套智能家电,有照明灯,风扇,冰箱,洗衣机,我们只要在手机上安装app就可以控制这些家电工作。 2.这些智能家电来自不同的厂家,不想针对每一种家电都安装一个app,分别控制,希望使用一个app就可以控制全部的智能家电。 3.要实现,一个app控制所有智能家电的需求, ......
命令 模式

编程基础与Python的开发模式

1.3.1程序设计的概念 1. 逻辑设计 (1)过程的起点是分析并确定需求。 (2)从现实中抽象。 (3)抽象过后是设计算法。 2. 程序设计 (1)选择编程语言。 (2)设计数据结构。 (3)设计业务逻辑。 (4)选择开发模式。 1.3.2程序的生命周期 (1)硬件部分。 (2)操作系统。 (3) ......
模式 基础 Python

应该也算策略模式吧

调用方自主选择策略方式:如食堂打饭,有很多窗口供选择,用户只需要去想买的窗口刷卡打饭即可 三个关键角色: 上下文信息类(Context):用于存放和执行需要使用的具体策略类以及客户端调用的逻辑。 抽象策略类(Strategy):定义策略的共有方法。 具体策略类(StrategyA 等):实现抽象策略 ......
策略 模式

软件设计模式系列之十八——迭代器模式

迭代器模式是一种行为型设计模式,它允许客户端逐个访问一个聚合对象中的元素,而不暴露该对象的内部表示。迭代器模式提供了一种统一的方式来遍历不同类型的集合,使客户端代码更加简洁和可复用。 ......
模式 设计模式 软件

用策略模式干掉代码里大量的if-eles或则Swatch,提升B格由面向过程转为面向对象

现象 大量的分支选择型代码段看着让人头疼 for (Field field : declaredFields) { Class<?> type = field.getType(); String key = field.getName(); Element result = resultMap.ad ......
对象 策略 过程 if-eles 模式

【专题】5G商业模式创新发展白皮书报告PDF合集分享(附原数据表)

原文链接:https://tecdat.cn/?p=33736 气候变化是一个全球性挑战,需要国际合作来解决。目前,已有189个国家加入了《巴黎协定》,并且各大经济体纷纷承诺实现碳中和目标,如欧盟委员会的长期战略愿景,中国的碳达峰和碳中和目标,以及美国重新加入巴黎协定。 阅读原文,获取专题报告合集全 ......
白皮 数据表 白皮书 模式 专题

智慧教育:数字化时代的未来教育模式

随着技术的进步和互联网的普及,教育机构和学校开始寻求利用先进的技术和创新的教育方法来提高学习效果和管理效率,包括在线教育、远程学习、教育数据分析等方面的发展。智慧教育旨在将这些技术和方法应用于教育领域,以满足学生、教师和教育机构的不断增长的需求,提供更灵活、高效和个性化的教育体验。 ......
智慧 模式 数字 时代

Python sanic AsyncIOScheduler 的单例模式

sanic 是个异步框架。可以配置多个worker ,执行定时任务时,也会执行多遍。期望通过单例模式,确保只运行一次。 解决思路。AsyncIOScheduler函数有没有自带的单例模式,答案无。网上有没有相关做法,搜集半天,没有太好的办法。试过全局变量,协程共享变量等,均无效。试着用进程的共享变量 ......
AsyncIOScheduler 模式 Python sanic

Mybatis中的设计模式

最近在看《通用源码阅读指导书:Mybatis源码详解》,这本书一一介绍了Mybatis中的各个包的功能,同时也涉及讲了一些阅读源码的技巧,还讲了一些源码中涉及的设计模式,这是本篇文章介绍的内容 在多说一点这本书,Mybatis是大部分Java开发者都熟悉的一个框架,通过这本书去学习如何阅读源码非常合 ......
设计模式 Mybatis 模式

【WCH蓝牙系列芯片】-基于CH582开发板—BLE从机开启HAL Sleep模式

在WCH沁恒官方提供的CH583的EVT资源包中,找到BLE文件中找到【Peripheral:外设从机角色例程】这个工程文件,在这个工程文件中,添加HAL Sleep模式,开启低功耗模式,通过观察功耗情况。 未开功耗,可以通过运行程序看出,此时的电流大小,图中电流尖峰是无线收发的电流,两个尖峰间隔时 ......
芯片 模式 Sleep WCH 582

深入Linux内核(进程篇)—进程切换之ARM体系架构【转】

转自:https://blog.csdn.net/liyuewuwunaile/article/details/106773630 进程切换一、context_switch二、switch_mm2.1 刷新I-CACHE2.2 ASID和TLB2.3 页表转换基址切换三、switch_to进程切换由 ......
进程 内核 架构 体系 Linux

Linux TLB 刷新的懒惰模式【转】

转自:https://blog.csdn.net/Henzox/article/details/41963271 我们都知道,在切换页表时会刷新 TLB,这样就可以使用新的地址空间,那什么是 TLB 刷新的懒惰模式呢? TLB 是什么这里不作多的解释,可以简单理解为,为了加快 MMU 对虚拟地址的转 ......
模式 Linux TLB

Linux centos7内核升级 简单快速的方法

Linux是支持多版本内核共存的,无非是系统启动的时候应用哪个版本内核而已。 关于内核: Linux 内核分两种:官方内核(通常是内核开发人员用)和各大 Linux 发行版内核(一般用户常用)。 关于Linux内核版本号:例如:[root@centos7 ~]# uname -r3.10.0-112 ......
简单快速 内核 centos7 方法 centos

c#桥接模式详解

基础介绍: 将抽象部分与它的实现部分分离,使它们都可以独立地变化。适用于不希望在抽象和实现部分之间有固定的绑定关系的情况,或者类的抽象以及它的实现都应该可以通过生成子类的方法加以扩充的情况。 将抽象部分与实现部分分离,使它们都可以独立地变化。 其实两个都是抽象的部分,更准确的说,是将一个事物中多个维 ......
模式

【RocketMQ】DLedger模式下的选主流程分析

RocketMQ 4.5版本之前,可以采用主从架构进行集群部署,但是如果master节点挂掉,不能自动在集群中选举出新的Master节点,需要人工介入,在4.5版本之后提供了DLedger模式,使用Raft算法,如果Master节点出现故障,可以自动选举出新的Master进行切换。 Raft协议 R ......
主流程 RocketMQ 主流 DLedger 模式

软件设计模式系列之十七——解释器模式

解释器模式是一种行为型设计模式,它用于将一种语言或表达式解释为对象。该模式通过定义语言的文法规则,并使用解释器来解释和执行这些规则,将复杂的语言转换为对象的操作。 在软件开发中,解释器模式常用于处理类似于编程语言、查询语言、正则表达式等需要解释和执行的场景。它将一个复杂的语言分解为一系列简单的规则,... ......
模式 解释器 设计模式 软件

内核模块详细加载/卸载过程

ko文件在数据组织形式上是ELF(Excutable And Linking Format)格式,是一种普通的可重定位目标文件。 这类文件包含了代码和数据,可以被用来链接成可执行文件或共享目标文件,静态链接库也可以归为这一类。 文件开始处是一个ELF头部(ELF Header),用来描述整个文件的组 ......
内核 模块 过程

CH32V208蓝牙从机sleep模式下功耗测试

本测试基于CH32V208W的开发板;蓝牙从机模式;使用程序BLE_UART 在进行功耗测试的时候尽量去除额外耗电器件,将开发板上的VDD于VIO相连接,测功耗时直接给VDD供电。 将会对500ms,1s,2s,5s广播间隔进行测试; CH32V208的在测功耗时 一般情况下是只要置1使能HAL_S ......
功耗 模式 sleep V208 208

数据库的MVCC模式

PG的mvcc模式:多版本并发控制,通过在数据库中创建多个版本的数据来实现并发的读写操作。每个数据库事务都能够看到一个逻辑上一致的数据库快照,当一个事务修改了数据库中的数据时,他不会直接修改原始数据,而是创建一个新的数据版本,并将修改后的数据写入新的数据版本中,这样其他事务依然可以读取到旧的数据版本 ......
模式 数据库 数据 MVCC