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

NTP时钟同步服务器

目录

一、什么是NTP?

二、计算机时间分类

三、NTP如何工作?

四、NTP时钟同步方式(linux)

五、时间同步实现软件(既是客户端软件也是服务端软件)

六、chrony时钟同步软件介绍

七、/etc/chrony.conf配置文件介绍

八、chronyc命令

九、网络公共NTP服务

十、Chrony时钟同步搭建案例


一、什么是NTP

网络时间协议(NTP)是时间同步协议。它用于在服务器和客户端之间同步时间。服务器端使用的是UDP端口号是123和323。使用NTP的目的是使所有设备的时间与网络上时钟服务器的时间同步,以使网络上所有设备的时间保持一致。对于提供NTP服务的服务器,它既可以作为时间源接受来自其它客户端的同步,自己本身也可做为客户端向网络上的其它时钟服务器同步时间。

二、计算机时间分类

1、系统时间:一般来说就是我们使用date命令查看到的时间,linux系统下所有时间的调用都使用的是系统时间,除了直接访问硬件时间的命令如: clock。

2、硬件时间(RTC): 主板BIOS中的时间,由主板电池供电来维护运行,系统在开机时会读取硬件时间,并根据硬件时间来设置系统时间,系统开机之后时间就由系统来管理,不在受硬件时间的控制。

三、NTP如何工作?

1.设备A向设备B发送NTP消息。消息离开设备A时带有时间戳。时间戳为10:00:00 am(T1)。

2.当此NTP消息到达设备B时,设备B添加其自己的时间戳。时间戳是11:00:01 am(T2)。

3.当此NTP消息离开设备B时,设备B添加其自己的时间戳并将时间戳更改为11:00:02(T3)。

4.设备A收到响应消息后,设备A的本地时间为上午10:00:03(T4)。

5.此时,设备A具有足够的信息来计算两个重要参数:

1、NTP数据包的往返时延Delay=设备A发送消息到收到消息之间所经历的时间-设备B处理消息数据所消耗的时间=(T4-T1)-(T3-T2)=2秒。

2、设备A和设备B之间的时间差offset(平均值)=设备B当前时间-设备A当前时间≈((设备A发给设备B两者当时时间差)+(设备B回复设备A两者当时时间差))/2=1小时。

说明:由于设备A发送给设备B的时间,在设备B收到之时、设备A当前的时间就从之前10点增加到了消息在到达设备B时途中所花费的时间,因此T2-T1的时间差就多增加消息发给设备B途中所花费的时间,并非两者实时的时间差。同理T3-T4的时间差值就少计算了设备B回复给设备A消息途中花费的时间差,并不是设备A收到消息当时本地的时间减去此时设备A的时间,因为在设备A收到消息时,设备B的时间已经在消息回复途中增加了。因此为了尽可能保持两者时间的同步,时间差取的是平均值并非丝毫不差。

四、NTP时钟同步方式(linux

1、直接同步:

使用ntpdate命令进行同步,直接进行时间变更。如果服务器上存在一个12点运行的计划任务,当前服务器时间是13点,但标准时间是11点,使用此命令可能会造成任务重复执行。因此使用ntpdate同步可能会引发风险,因此该命令也多用于配置时钟同步服务时第一次同步时间时使用。

2、平滑同步:

使用ntpd进行时钟同步,可以尽可能小的减少系统计划任务数量的重复执行,它每次同步时间的偏移量不会太陡,是慢慢来的。正因这样,ntpd平滑同步可能消耗的时间会比较常,一时间难以看出系统时间变化。

描述:假设设备A当前的时间是13:00,通过联系时钟同步服务器计算推算出了当前的标准时间是8:00、与标准时间差5h。如果此时设备A采用平滑同步时间的工作方式,那么设备A并不会直接将当前时间减少5h,调整到标准时间8:00。而是采用平滑的、一点一点的缩小与标准时间差。比如:一开始设备A先将本地当前时间13:00向前偏移2h,调整到11:00点;然后时间从11:00开始向后接着计时,其间设备A就重复执行了从11:00到13:00之间预先设置好的计划任务如黄色框区域所包含的计划任务。当设备A时间到了15:00时又进行了一次时间的平滑同步,将当前系统时间由15:00点向前偏移了2h,假设偏移后的时间是14:00;之后系统开始从14:00继续开始计时,其间设备A只是重复执行了第二个黄色框时间内的计划任务。当设备系统时间为19:00时,设备A又开始进行时间的平滑同步,将系统当前时间向前偏移1h变成18:00;然后继续开始计时,其间同样只是重复执行了从18:00到19:00之间第三个黄色框时间内的计划任务。通过以上过程,设备A总共执行了3次时间的平滑同步:减2h---->减2h----->减1h。设备A系统时间总共减少了5个小时,最终减少的时间和标准时间差相同以此通过几次时间平滑偏移完成了系统时间和标准时间的同步一致,并且尽可能小的减少了系统内的计划任务因时间调整重复执行的不同类型任务数量。

五、时间同步实现软件(既是客户端软件也是服务端软件)

*由于客户端系统时间经常时而不准,为了能让其在任何情况下向NTP服务器自动同步时间,需保持客户、服务端程序在后台持续运行。

1、ntp: 将主机系统时间和世界协调时间UTC进行同步,在局域网内误差可达0.1ms,在互联网内绝大地方时间误差控制在1-50ms。

2、chrony: 红帽系统8.0以后系统默认安装的ntp服务软件,可使系统时间与NTP服务器、GPS接收器以及手表进行同步。还可以作为NTP服务器为其它客户端提供时钟同步服务。在局域网内误差控制在几十微秒,在互联网上时间同步误差控制在几十毫秒内,时间同步更精准。

六、chrony时钟同步软件介绍

两个主要程序:

1、chronyd: 后台运行的NTP服务守护进程,用于将内核控制的系统时间和时钟服务器时间进行同步。并根据从NTP服务器获取的时间信息计算出标准时间差,并以此对系统时间进行补偿调整。

2、chronyc: 客户命令行工具,用于监控性能并进行多样化配置。它既可以在运行chronyd实例的计算机上进行使用,也可以在一台不同的远程计算机上进行使用。

服务单元unit文件: /usr/lib/systemd/system/chronyd.service

监听端口: 323/udp,123/udp(为了兼容老版红帽系统自带的的ntp时间同步软件)

配置文件:/etc/chrony.conf

七、/etc/chrony.conf配置文件介绍

  • server-----指定本机要同步的NTP服务器IP地址或域名。iburst选项表示时间源可达时,一下子发8个数据包而不是一个数据包向服务器同步时间。包间隔为2s,可加速用户初始时间同步速度。
  • driftfile----根据从时间源获取的标准时间计算出系统本身调整时间的差值,并将其记录到此处指定的文件中,以便系统重启后为调整系统时间做补偿。
  • rtcsync----开启内核模式。使内核控制的系统时间每11分钟拷贝到实时时间RTC,即硬件时间内。
  • allow/deny  -----设置是否允许某台主机、子网、或者网络访问到本系统NTP服务。
  • cmdallow/cmddeny-------指定那台主机可以通过chronyd使用控制命令。
  • bindcmdaddress-----指定chronyd时间同步服务所监听的接口IP地址
  • makestep------为客户端的时钟同步设置时间差阈值。只有用户系统时间偏差超过所允许的时间阈值时,进行系统时间的调整。
  • local stratum 10----即使上面server指令中的时间服务器不可用,也允许将本地时间作为标准时间授时给其它客户端。我们知道NTP组网架构有层级划分:如阿里云服务器为企业内部的A1设备授时------>A1设备又为企业的A2、A3设备提供时间同步服务------->A3设备又给企业内的A4设备提供NTP服务。这样站在阿里云服务器角度,阿里云服务器就属于0层---->A1设备属于1层------>A2、3设备属于2层------>A4设备就属于3层了(层:客户机到达时钟源服务器中间所经历的其它NTP服务器跳数)。因此,"local stratum 10"就表示在server处的服务器不可访问时,本系统作为NTP服务器只给位于其下(从本服务器开始算起:服务器本身属于0层)10层内的设备提供授时服务。

八、chronyc命令

help----查询更多有关chronyc的交互命令

accheck-----指定客户端地址或域名检查其是否可以访问到本地ntp服务器

activity-----显示当前有多少NTP服务源在线/离线

sources [-v]-----显示当前时间源的同步信息

sourcestats [-v]------显示当前时间源的同步统计信息

add server  ------手动添加一台新的NTP服务器(并不会保存到配置文件中)

clients -----查看有哪些客户端已访问到本服务器

delete ------手动删除NTP服务器

settime -----手动设置守护进程时间

sracking-------显示系统时间信息

九、网络公共NTP服务

cn.pool.ntp.org------虚拟化集群的ntp服务器

ntp.aliyun.com-----阿里云linux公共NTP服务器

time.pool.aliyun.com------阿里云windows的NTP服务器

s1b.time.edu.cn--------清华大学NTP服务器

210.72.145.44--------国家授时中心服务器

十、Chrony时钟同步搭建案例

实验环境:

实验描述:

NTP-Server/Client扮演客户机角色向阿里云同步时间、同时也扮演内网NTP时钟源服务器角色向内网主机Cliet提授时服务。

注意:

1、客户端系统时间与NTP服务器系统时间差过大,客户端将有可能不会执行时间同步。

2、若本机系统为时钟同步的Server和Client两种角色,当本地系统无法访问指定的服务器进行时钟同步时,则默认也不允许向其它的客户机提供授时服务。除非手动配置允许对本地客户端授时的层级。

Server端:

1、安装NTP服务客户端软件chrony(红帽8.0默认已安装)。

2、查看主机系统时间和硬件时间,为了时间同步测试将系统和硬件时间调错。

2、修改/etc/chrony.conf配置文件。

本系统向阿里云NTP服务器同步系统时间:

允许企业内部的主机访问本NTP服务:

3、防火墙放行chrony监听的UDP_323和123端口。

4、开启chronyd时钟同步服务

5、查看系统时间同步状况。

6、在NTP服务器端测试客户端能否访问到本机提供的ntp服务(可省略)。

Client端:

1、安装chrony客户端软件(红帽8.0默认已安装)。

2、修改/etc/chrony.conf配置文件来指定本机所要向哪台NTP时钟源同步时间。

3、将系统时间调错,用于测试后面同步效果。

4、开启chronyd服务,并查看chrony.conf配置文件指定的NTP服务器是否处于运行状态。

5、查看系统时间同步状况

6、切换到ntp服务器查看有哪些客户机已访问到本服务器(可省略)

@声明:“山月润无声”博主知识水平有限,以上文章如有不妥之处,欢迎广大IT爱好者指正,小弟定当虚心受教!

相关文章:

NTP时钟同步服务器

目录 一、什么是NTP? 二、计算机时间分类 三、NTP如何工作? 四、NTP时钟同步方式(linux) 五、时间同步实现软件(既是客户端软件也是服务端软件) 六、chrony时钟同步软件介绍 七、/etc/chrony.conf配置文件介…...

webassembly003 ggml GGML Tensor Library part-2 官方使用说明

https://github.com/ggerganov/whisper.cpp/tree/1.0.3 GGML Tensor Library 官方有一个函数使用说明,但是从初始版本就没修改过 : https://github1s.com/ggerganov/ggml/blob/master/include/ggml/ggml.h#L3-L173 This documentation is still a work in progres…...

ES主集群的优化参考点

因为流量比较大, 导致ES线程数飙高,cpu直往上窜,查询耗时增加,并传导给所有调用方,导致更大范围的延时。如何解决这个问题呢? ES负载不合理,热点问题严重。ES主集群一共有几十个节点&#xff0…...

全国范围内-二手房小区数据-2023-8月更新

收录融合去重多个平台数据:80万,仅供数字参考 数据纬度字段名注释枚举值基础信息id主键id:名称城市来源生成 md5值00001073838501125ec4473463ead9ccname名称瑞祥安文创园address地址(朝阳)双桥路东柳村口南口lng经度116.581903lat纬度39.89…...

第4章 循环变换

4.1 适配体系结构特征的关键技术 由于高级语言隐藏了底层硬件体系结构的大量细节,如果不经过优化直接将高级程序设计语言编写的程序部署在底层硬件上,往往无法充分利用底层硬件体系结构的处理能力。 算子融合不仅可以提…...

spring cloud使用git作为配置中心,git开启了双因子认证,如何写本地配置文件

问题 spring cloud使用git作为配置中心,git开启了双因子认证,死活认证不成功!!!!! 报错关键字 org.eclipse.jgit.api.errors.TransportException: https://git.qualink.com/zhaoxin15/sc-confi…...

JVM内存管理、内存分区:堆、方法区、虚拟机栈、本地方法栈、程序计数器

内存管理 内存分区 线程共享 堆 存放实例,字符串常量(直接引用),静态变量,线程分配缓冲区(TLAB线程私有)。垃圾收集器管理的区域 方法区 非堆,和堆相对的概念。存储已被虚拟机加载的…...

L1-047 装睡(Python实现) 测试点全过

题目 你永远叫不醒一个装睡的人 —— 但是通过分析一个人的呼吸频率和脉搏,你可以发现谁在装睡!医生告诉我们,正常人睡眠时的呼吸频率是每分钟15-20次,脉搏是每分钟50-70次。下面给定一系列人的呼吸频率与脉搏,请你找…...

Mysql优化原理分析

一、存储引擎 1.1 MyISAM 一张表生成三个文件 xxx.frm:存储表结构xxx.MYD:存储表数据xxx.MYI:存储表索引 索引文件和数据文件是分离的(非聚集) select * from t where t.col1 30; 先去t.MYI文件查找30对应的索引…...

软考高级系统架构设计师系列案例考点专题一:软件架构设计

软考高级系统架构设计师系列案例考点专题一:软件架构设计 一、考点梳理及精讲1.质量属性判断与质量属性效用树2.必备概念3.架构风格对比4.MVC架构5.J2EE架构6.面向服务的架构SOA7.企业服务总线ESB一、考点梳理及精讲 系统架构设计师方面的知识在案例分析中每年必考1~2题,并且…...

css实现垂直上下布局的两种常用方法

例子&#xff1a;将两个<span>元素在<div>内垂直居中放置. 方法一&#xff1a;使用 Flexbox 来实现。 在下面的示例中&#xff0c;我将为 <div> 元素添加样式&#xff0c;使其成为一个 Flex 容器&#xff0c;并使用 Flexbox 属性将其中的两个 <span>…...

【Jetpack】Navigation 导航组件 ⑤ ( NavigationUI 类使用 )

文章目录 一、NavigationUI 类简介二、NavigationUI 类使用流程1、创建 Fragment2、创建 NavigationGraph3、Activity 导入 NavHostFragment4、创建菜单5、Activity 界面开发 NavigationUI 的主要逻辑 ( 重点 )a、添加 Fragment 布局b、处理 Navigation 导航逻辑 ( 重点 )c、启…...

基于NAudio实现简单的音乐播放器

《测试.net开源音频库NAudio》介绍了使用NAudio实现音乐播放和录音的基本用法&#xff0c;本文基于NAudio的音乐播放功能实现简单的mp3音乐播放器程序&#xff0c;主要实现以下功能&#xff1a;   1&#xff09;导入文件夹中的mp3音乐文件&#xff0c;直接导入多个mp3音乐文件…...

C++之“00000001“和“\x00\x00\x00\x01“用法区别(一百八十六)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…...

Java“魂牵”京东店铺所有商品数据接口,京东店铺所有商品API接口,京东API接口申请指南

要通过京东的API获取店铺所有商品数据&#xff0c;您可以使用京东开放平台提供的接口来实现。以下是一种使用Java编程语言实现的示例&#xff0c;展示如何通过京东开放平台API获取整店商品数据&#xff1a; 首先&#xff0c;确保您已注册成为京东开放平台的开发者&#xff0c;…...

vuex详细用法

Vuex是一个专门为Vue.js应用程序开发的状态管理模式。它可以帮助我们在Vue组件之间共享和管理数据&#xff0c;以及实现更好的代码组织和调试。 在Vue.js中&#xff0c;组件之间的数据通信可以通过props和事件来实现。然而&#xff0c;随着应用程序规模的增长&#xff0c;组件…...

微前端-monorepo-无界

文章目录 前言一、微前端二 、monorepo三 、pnpm硬链接软链接&#xff08;符号链接&#xff09;幽灵依赖依赖安装耗时长monorepo项目搭建子模块复用 四、无界接入无界无界预加载无界传参 总结 前言 本文主要记录微前端框架 无界 的使用与理解以及monorepo代码管理方式。 一、微…...

阿里云矢量图标透明背景转换/展示时变为黑色解决方法

下载了一个矢量图标&#xff0c;背景是透明的 上传到minio然后在前端展示&#xff0c;发现透明&#xff08;白色&#xff09;的地方变成黑色了 处理方法&#xff1a;去除透明的底色。使用window的画图程序打开保存一遍&#xff0c;将透明色转为白色 OK...

Linux之Shell(二)

Linux之Shell 函数系统函数basenamedirname 自定义函数 正则表达式入门常规匹配常用特殊字符 文本处理工具cutawk 综合应用案例归档文件发送消息 函数 系统函数 basename 基本语法 basename [string / pathname] [suffix] 功能描述&#xff1a;basename 命令会删掉所有的前缀…...

以太网POE供电浪涌静电防护推荐TVS二极管

POE是一种传输技术&#xff0c;可在以太网电缆上传输电力和数据。1000M千兆以太网POE供电端口广泛用于安防、视频监控以及智能电网等工业系统&#xff0c;以实现系统内的数据、视频传输、流量控制、以及通过总线实现供电。由于工业以太网工作环境非常严酷苛刻&#xff0c;对于以…...

如何在 JavaScript 中查看结构体数组?

调试 JavaScript 代码的最简单方法是使用许多开发人员使用的 console.log()。有时&#xff0c;我们需要了解数组的结构和存储的值以进行调试。以下介绍如何查看结构数组。 JavaScript 的各种方法允许我们检查数组的结构。例如&#xff0c;我们可以知道数组是否包含对象、嵌套数…...

【SpringBoot学习笔记】02.静态资源与首页订制

静态资源 Spring Boot 通过 MVC 的自动配置类 WebMvcAutoConfiguration 为这些 WebJars 前端资源提供了默认映射规则&#xff0c;部分源码如下。 jar包&#xff1a; JAR 文件就是 Java Archive File&#xff0c;顾名思意&#xff0c;它的应用是与 Java 息息相关的&#xff0c;…...

kotlin 转 Java

今天突然想研究下有些kotlin文件转为Java到底长什么样&#xff0c;好方便优化kotlin代码&#xff0c;搞了半天发现一个非常简单的Android Studio或者Intellij idea官方插件Kotlin&#xff0c;Kotlin是插件的名字&#xff0c;真是醉了&#xff1b; 这里以AS为例&#xff0c;使用…...

【Harmony】在Harmony上面可以使用的Android常用的开源库

序言 Harmony开发中&#xff0c;由于不像Android开发经过这么多年的发展&#xff0c;各种类库都是比较完善的&#xff0c;这就导致在Harmony开发中很多Android类库是不能使用的&#xff0c;但是也有一些是可以使用的&#xff0c;下面是我在Harmony开发中实际开发中可以使用的部…...

数学建模:灰色关联分析

&#x1f506; 文章首发于我的个人博客&#xff1a;欢迎大佬们来逛逛 灰色关联分析法 算法流程 建立一个m行 n列的矩阵 X X X &#xff0c;其中 m 表示评价对象&#xff0c; n表示评价指标首先进行矩阵的归一化&#xff0c;得到归一化后的矩阵 d a t a data data获取参考向…...

nodepad++ 插件的安装

nodepad 插件的安装 一、插件安装二、安装插件&#xff1a;Json Viewer nodepad 有 插件管理功能&#xff0c;其中有格式化json以及可以将json作为树查看的插件&#xff1a; Json Viewer 一、插件安装 1、首先下载最新的notepad 64位【https://notepad-plus.en.softonic.com…...

学习分享:Ubuntu 下使用 Qt 打开串口报错 Permission denied

Ubuntu 下使用 Qt 打开串口报错 Permission denied 错误描述 提前声明一下&#xff0c;开发环境是 Ubuntu18.04&#xff0c;用户是非 root 用户。 因项目需求&#xff0c;需要使用到 Qt 收发串口数据&#xff0c;曾经写过一个串口调试助手的程序 通俗易懂玩QT&#xff1a;串口…...

Javaweb入门

Spring Spring发展到今天已经形成一种开发生态圈&#xff0c;Spring提供若干个子项目&#xff0c;每个项目用于完成特定的功能。 Spring Boot可以帮助我们非常快速的构建应用程序、简化开发、提高效率 SpringBootWeb入门 需求&#xff1a;使用Spring Boot开发一个web应用&a…...

后端开发基础概念

后端开发基础概念 目前处于项目上手阶段&#xff0c;在学习项目过程中&#xff0c;有一些一知半解或者不明白含义的专业名词或者缩写&#xff0c;在此汇总。里面的内容很多都是基于个人理解&#xff0c;水平有限如果有出错的地方还请各位大佬批评指正。 2023年8月31日00:34:22…...

ELK原理和介绍

为什么用到ELK&#xff1a; 一般我们需要进行日志分析场景&#xff1a;直接在日志文件中 grep、awk 就可以获得自己想要的信息。但在规模较大的场景中&#xff0c;此方法效率低下&#xff0c;面临问题包括日志量太大如何归档、文本搜索太慢怎么办、如何多维度查询。需要集中化…...

FBX SDK 开发环境配置 visual studio 2022

FBX | Adaptable File Formats for 3D Animation Software | Autodesk. 下载windows的sdk并安装. 创建一个c console 工程 设置include目录 添加预处理宏 FBX_SHARED1 添加fbx sdk lib 目录 添加依赖lib : libfbxsdk-md.lib libxml2-md.lib zlib-md.lib 配置完毕....

vue面试题_vue2和vue3的区别

1、数据绑定原理不同 vue2&#xff1a;vue2的数据绑定是利用ES5的一个API&#xff1a;Object.definePropert() 对数据进行劫持&#xff0c;结合发布订阅模式的方式来实现的。 vue3&#xff1a;vue3中使用了ES6的Proxy API对数据代理。相比vue2.x&#xff0c;使用proxy的优势如…...

Shiro整合SpringBoot,实战下的应用场景

文章目录 前言一、springBootshiro环境准备1.数据库2.ssmp环境搭建3.实体类4.三层搭建5.初始化测试数据 二、Shiro过滤器1.Shiro认证过滤器2.Shiro授权过滤器 三、springBootshiro身份认证1.创建Realm,重写认证方法doGetAuthenticationInfo2.创建shiro配置类3.Postman测试 四、…...

C语言——全局变量和局部变量重名了会怎么样

前言 &#xff08;1&#xff09;今天在交流群里面看到这样一个问题: 为什么这个程序中下面我定义的void型函数smart在全局变量前声明了&#xff0c;但是在man函数中调用了smart函数&#xff0c;m的值打印出来还是0。 #include<stdio.h>int m; void smart(void);int main(…...

linux下vi或vim操作Found a swap file by the name的原因及解决方法--九五小庞

在linux下用vi或vim打开Test.java文件时 [rootlocalhost tmp]# vi Test.java出现了如下信息&#xff1a; E325: ATTENTION Found a swap file by the name ".Test.java.swp" owned by: root dated: Wed Dec 7 13:52:56 2011 file name: /var/tmp/Test.java modif…...

通过RD Client远程连接windows电脑踩坑点

通过RD Client远程连接windows电脑操作的个人踩坑点&#xff0c;记录下来&#xff0c;防止下一次还犯。 配置&#xff1a; win10专业版腾讯云服务器Ubuntu22.04小米平板RD client 首先是安装frp 这一部分参考的是&#xff1a;通过RD Client远程连接windows电脑&#xff08;…...

学习node之——如何在项目中使用MySQL、前后端的身份认证

上一篇文章只写了一丢丢&#xff0c;这篇才是正片&#xff0c;look look look 一、使用mysql模块操作数据库 1、查询数据 这里连接数据库的用户和密码都是我们在安装mysql时配置的密码。每个人的users表格里面数据不同&#xff0c;结果也会不一样哟&#xff01; // 导入mys…...

AUTOSAR从入门到精通-【应用篇】参照AUTOSAR架构的柴油车后处理集成电控系统软件设计与研究(续)

目录 3.3底层驱动模块开发 3.3.1利用S-Function编写底层驱动模块 3.3.2编写TLC文件来控制自动代码生成过程...

Linux 内核动态打印调试(dev_info、 dev_dbg )

目录 前言 1 printk消息级别 2 调整内核printk打印级别 3 dev_xxx函数简介 4 配置内核使用动态打印 5 动态调试使用方法 6 动态打印调试的基本原理 &#x1f388;个人主页&#x1f388;&#xff1a;linux_嵌入式大师之路的博客-CSDN博客&#x1f389;&#x1f389;&…...

深入浅出AXI协议(3)——握手过程

一、前言 在之前的文章中我们快速地浏览了一下AXI4协议中的接口信号&#xff0c;对此我们建议先有一个简单的认知&#xff0c;接下来在使用到的时候我们还会对各种信号进行一个详细的讲解&#xff0c;在这篇文章中我们将讲述AXI协议的握手协议。 二、握手协议概述 在前面的文章…...

Ansible学习笔记5

copy模块&#xff1a;&#xff08;重点&#xff09; copy模块用于对文件的远程拷贝&#xff08;如把本地的文件拷贝到远程主机上。&#xff09; 在master的主机上准备一个文件&#xff0c;拷贝文件到group1的所有主机上。 这个用的频率非常高&#xff0c;非常有用的一个模块…...

LeetCode 面试题 02.06. 回文链表

文章目录 一、题目二、C# 题解 一、题目 编写一个函数&#xff0c;检查输入的链表是否是回文的。 点击此处跳转题目。 示例 1&#xff1a; 输入&#xff1a; 1->2 输出&#xff1a; false 示例 2&#xff1a; 输入&#xff1a; 1->2->2->1 输出&#xff1a; true …...

linux环境没有curl或者telnet命令解决方法与区分linux环境类型

如何区分你当前使用的 Linux 系统是 Ubuntu、CentOS 还是 Alpine&#xff0c;查看 /etc/os-release 文件 [rootlocalhost ~]# cat /etc/os-release NAME"CentOS Linux" VERSION"7 (Core)" ID"centos" ID_LIKE"rhel fedora" VERSION_I…...

golang channel

channel是不同协程之间异步通信的数据结构。 基本用法 1 构造 ch:make(chan int)//无缓冲 ch:make(chan int,10)//有缓冲2 读操作 val:<-ch <-ch val,ok:<-ch3 写 var data int ch<-data4 关闭 close(ch)5 多路复用 select{ case <-parent.Done():child.…...

高等职业学校物联网实训室建设方案

一、概述 1.1专业背景 物联网&#xff08;Internet of Things&#xff09;被称为继计算机、互联网之后世界信息产业第三次浪潮&#xff0c;它并非一个全新的技术领域&#xff0c;而是现代信息技术发展到一定阶段后出现的一种聚合性应用与技术提升&#xff0c;是随着传感网、通…...

Python基础学习第四天:Python注释

创建注释 注释以 &#xff03; 开头&#xff0c;Python 将忽略它们&#xff1a; 实例 #This is a comment print("Hello, World!")运行实例 注释可以放在一行的末尾&#xff0c;Python 将忽略该行的其余部分&#xff1a; 实例 print("Hello, World!")…...

Puppeteer中使用Stealth.min.js库

这里需要安装npm install puppeteer-extra puppeteer-extra-plugin-stealth&#xff0c;然后&#xff0c;在启动浏览器时&#xff0c;Puppeteer 会自动应用 Stealth.min.js 插件的功能。 const puppeteer require(puppeteer-extra); const StealthPlugin require(puppeteer-…...

JVM ZGC垃圾收集器

ZGC垃圾收集器 ZGC&#xff08;“Z”并非什么专业名词的缩写&#xff0c;这款收集器的名字就叫作Z Garbage Collector&#xff09;是一款在JDK 11中新加入的具有实验性质[1]的低延迟垃圾收集器&#xff0c;是由Oracle公司研发的。 ZGC收集器是一款基于Region内存布局的&#…...

事务管理-事务进阶-propagation属性

目录 事务属性-传播行为 propagation 案例 需求 步骤 具体代码 小结 事务属性-传播行为 propagation 事务传播行为&#xff1a;指的就是当一个事务方法被另一个事务方法调用时&#xff0c;这个事务方法应该如何进行事务控制。即如果事务方法A中调用了事务方法B&#xff0c…...

树多选搜索查询,搜索后选中状态仍保留

<template><div class"half-transfer"><div class"el-transfer-panel"><div><el-checkbox v-model"selectAll" change"handleSelectAll">全部</el-checkbox></div><el-input v-model&qu…...