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

情景题之小明的Linux实习之旅:linux实战练习1(下)【基础命令,权限修改,日志查询,进程管理...】

小明的Linux实习之旅:基础指令练习情景练习题下

    • 前景提要
    • 小明是怎么做的
      • 场景1:初识Linux,创建目录和文件
      • 场景2:权限管理,小明的权限困惑
      • 场景3:打包与解压,小明的备份操作
      • 场景4:使用Grep,小明的搜索技能
      • 场景5:系统服务管理,小明的首次接触
        • ==小明笔记大公开:==
      • 场景6:进程管理,小明的多任务处理
        • ==小明笔记大公开:==
      • 场景7:定时任务与系统状态
        • ==小明笔记大公开:==
        • ==小明笔记大公开之`uptime`命令:==
        • ==小明笔记大公开之关于内存:==
        • ==小明笔记大公开之`uptime`命令:==
        • ==小明笔记大公开之`top`命令:==
      • 场景8:dd命令,小明的惊险操作
        • ==小明的提醒:==

前景提要

小明刚刚开始他的Linux测试开发实习。第一天,他的leader给了他一系列任务,帮助他熟悉Linux命令行操作。以下是小明的冒险故事。

小明是怎么做的

场景1:初识Linux,创建目录和文件

  1. 小明的导师要求他创建一个项目目录,并在其中创建一个README文件。

    mkdir ~/project     #make directory建立目录
    cd ~/project    #change directory,改变目录或切换到另一个文件夹
    touch README.md    #碰到文件
    
  2. 小明在README.md中写下了项目简介,但不小心写错了内容。

    vi README.md
    # 按i进入插入模式,输入“这是小明的第一个项目。”
    # 但写成了“这是小明的第一个错误。”
    # 按Esc键,输入:wq保存并退出
    
  3. 小明发现写错了,需要修改内容。

    vi README.md
    # 按i进入插入模式,将“错误”改为“项目”
    # 按Esc键,输入:wq保存并退出
    
  4. 导师检查后,认为小明的描述还不够详细,要求他再添加一些信息。

    echo "项目描述:这是一个用于学习Linux基本命令的项目。" >> README.md
    cat README.md     #concatenate(连锁,用于连接并显示文件内容)
    

小明的电脑界面:
小明的界面

场景2:权限管理,小明的权限困惑

  1. 导师提醒小明要注意文件权限管理,要求他将README.md的权限修改为755。

    chmod 755 README.md    #change mode改变权限
    ls -l README.md        #list(列出目录内容)
    
  2. 导师还要求小明将项目目录的所有者改为root。

    sudo chown root:root ~/project   
    #superuser do,用于执行需要超级用户(root)权限的命令,而不需要实际切换到root用户
    #change owner改变所有者
    ls -ld ~/project   #d:directory,表示只显示目录的信息不显示内部文件(夹)
    

3.导师刚才说错了,他是要确认该项目目录不是root,因为之后需要进行一些写入操作。小明于是默默地将项目目录的所有者改回来。

  •   groups christine  #确认原来默认群组是否也是christine(我的用户名)# 结果:christine : christine[christine@localhost rongyi_project]$ sudo chown # 结果:christine:christine ~/rongyi_project[christine@localhost rongyi_project]$ ls -ld ~/rongyi_project# 结果: drwxrwxr-x. 2 christine christine 68 6月   9 00:46 /home/christine/rongyi_project
    

小明的电脑界面:
在这里插入图片描述

场景3:打包与解压,小明的备份操作

  1. 导师告诉小明要定期备份项目目录,于是小明打包了整个项目目录。

    #确保回到home页面
    cd ~
    # 使用 tar 命令来打包目录时,压缩文件会被存放在执行命令时所在的目录中。
    tar -cvf project_v1.tar project   #区别~/project
    ls -lh project_v1.tar
    
  2. 一天,小明需要恢复之前的备份,于是他解压了备份文件。

    mkdir ~/backup #新建一个备份目录用来放解压文件
    tar -xvf project_v1.tar -C backup   #-C一定是大写,tar方法敏感
    cd backup
    ls
    

小明的电脑界面:
在这里插入图片描述

场景4:使用Grep,小明的搜索技能

  1. 小明需要在项目目录中查找所有包含“项目”字样的文件。

    grep -r "项目" ~/project
    # grep:文本搜索工具,允许你使用正则表达式来搜索文本。
    # -r:递归搜索,即搜索指定目录及其所有子目录中的文件。
    
  2. 导师要求他找出README.md文件中所有包含“描述”字样的行。

    grep "描述" ~/project/README.md
    

小明的电脑界面:
在这里插入图片描述

场景5:系统服务管理,小明的首次接触

  1. 导师让小明检查防火墙状态,并确保它是开启的。

    sudo systemctl status firewalld
    sudo systemctl start firewalld
    
  2. 导师让小明启动MySQL服务并查看其状态。

    sudo systemctl start mysql
    sudo systemctl status mysql
    
  3. 小明还需要启动Redis服务并检查其状态。

    sudo systemctl start redis
    sudo systemctl status redis
    
  4. 最后,导师让小明查看网络接口的状态。

    ifconfig
    

小明的电脑界面:
在这里插入图片描述

小明笔记大公开:

systemctlsystemd的控制工具(control tool)的缩写。systemd是一个初始化系统(init system)和用户空间(userspace)的系统管理器,用于管理系统资源和服务。

  • systemctl start <service>:启动一个服务
  • systemctl stop <service>:停止一个服务
  • systemctl restart <service>:重启一个服务
  • systemctl status <service>:查询一个服务的状态
  • systemctl enable <service>:在系统启动时自动启动一个服务
  • systemctl disable <service>:在系统启动时禁用一个服务的自动启动

场景6:进程管理,小明的多任务处理

  1. 小明查看了系统中所有正在运行的进程。

    ps -ef
    
  2. 小明搜到了一个排序方法,发现有一个进程占用了大量内存资源,于是他结束了该进程。。

    ps aux --sort=-%mem   #按内存使用量排序:通过管道和 sort 命令按 %MEM 或 RSS 列排序,找到内存占用最高的进程。# kill <PID>    #新手不要学小明,容易坏事  终止指定PID
    
  3. 小明根据进程名称结束了一个测试进程。

    pkill test_process  #终止指定进程名
    
小明笔记大公开:
  • UID: 用户ID。显示了哪个用户拥有该进程。例如,root 表示该进程是由 root 用户拥有的。
  • PID: 进程ID。这是一个唯一的数字,用于标识系统中的每个进程。
  • PPID: 父进程ID。这是创建该进程的进程的PID。
  • C: CPU 使用率。这表示进程最近的 CPU 使用率,通常是一个介于 0.0(没有使用)和 100.0(完全使用)之间的十进制数。但在这里,由于 ps 命令的默认输出格式,它可能只是一个简单的数字,代表优先级。
  • STIME: 启动时间。这显示了进程开始运行的时间。
  • TTY: 终端类型。通常表示进程在哪个终端上运行,或者如果没有关联到终端,则可能显示为 ?
  • TIME: CPU 时间。这显示了进程自启动以来所使用的 CPU 时间总量。
  • CMD: 命令。这显示了启动进程的命令名或命令行。

常见的:

  • systemd 是系统的初始化系统和服务管理器,负责启动和管理系统进程。
  • kthreaddksoftirqdkworkermigrationrcu_bhrcu_sched 都是内核线程,它们处理系统的低级任务,如中断、调度和其他内核功能。这些通常不由用户直接管理。

场景7:定时任务与系统状态

  1. 导师要求小明设置一个定时任务,每天备份项目目录。

    crontab -e
    # 添加以下行以每天午夜备份项目目录:
    # 0 0 * * * tar -cvf ~/project_v1_$(date +\%F).tar ~/rongyi_project
    
  2. 小明查看了当前用户的所有定时任务。

    crontab -l
    
小明笔记大公开:

crontab 是由 “cron” 和 “tab” 两个单词组成的缩写。

  1. cron:这是 Unix 和 Linux 系统中用于定时执行任务的守护进程(daemon)的名称。它会在后台运行,并每分钟检查是否有预定的作业需要执行。这些作业通常被称为 “cron jobs”。
  2. tab:这里可以理解为表格(table)的简写,因为 crontab 文件实际上是一个用于存储和管理定时任务的列表或表格。

因此,crontab 的整体意思是“cron的表格”或“cron的任务列表”。

crontab 文件中,每一行代表一个任务,包含了该任务的时间设置和要执行的命令或脚本。这些时间设置可以精确到分钟、小时、日期、月份和星期等不同的时间单位。

  1. 小明查看了系统运行时间和负载信息。

    uptime
    
小明笔记大公开之uptime命令:

显示系统已经运行了多长时间、当前有多少用户登录、以及系统在过去的 1 分钟、5 分钟和 15 分钟内的平均负载。

[christine@localhost ~]$ uptime

06:08:38 up 19:35, 5 users, load average: 0.11, 0.22, 0.26

在上一行小明得到结果中:

  • 06:08:38:当前的系统时间。
  • up 19:35:系统已经运行了 19 小时 35 分钟。(看得出小明很努力,忘了断开)
  • 5 users:当前有 5 个用户登录到系统。
  • load average: 0.11, 0.22, 0.26:系统在过去的 1 分钟、5 分钟和 15 分钟内的平均负载。

负载平均值是一个表示系统负载的度量,但它不是直接表示 CPU 使用率或正在运行的进程数量。它实际上是系统中处于可运行(或等待运行)状态的进程队列的平均长度。负载值越低,表示系统越空闲;负载值越高,表示系统越繁忙。

  • 0.11:过去 1 分钟内的平均负载。
  • 0.22:过去 5 分钟内的平均负载。
  • 0.26:过去 15 分钟内的平均负载。

以小明的这个情况,负载值都很低,表示系统目前很空闲,有足够的处理能力来处理额外的任务。

  1. 小明查看了系统内存使用情况。
free -h
小明笔记大公开之关于内存:

当运行 free -h 命令时,查看系统上的内存使用情况,其中 -h 选项表示“human-readable”,即以人类可读的格式(如 G、M)显示结果。

[christine@localhost ~]$ free -h
total used free shared buff/cache available
Mem: 972M 580M 64M 124M 327M 65M
Swap: 2.0G 496M 1.5G

  • Mem: 这部分显示了物理内存(RAM)的使用情况。
    • total: 总的物理内存大小,这里是 972M(972 兆字节)。
    • used: 当前已使用的物理内存,这里是 580M。
    • free: 当前未使用的物理内存,这里是 64M。
    • shared: 被多个进程共享的内存量,这里是 124M。
    • buff/cache: 缓存和缓冲区使用的内存量,这部分内存可以被回收以满足应用程序的需求,而不必从磁盘读取数据。这里是 327M。
    • available: 估计的、在不交换出的情况下,可以分配给应用程序的内存量。这是 “free” 和 “buff/cache” 的一个估计值,考虑了它们被回收的可能性。这里是 65M。
  • Swap: 这部分显示了交换空间(swap space)的使用情况。
    • total: 总的交换空间大小,这里是 2.0G(2 吉字节)。
    • used: 当前已使用的交换空间,这里是 496M。
    • free: 当前未使用的交换空间,这里是 1.5G。

从小明的输出中,可以看到物理内存的大部分(超过一半)已经被使用,但交换空间的使用量相对较少(不到四分之一)。如果这个系统开始大量使用交换空间,那么性能可能会受到影响,因为从磁盘读取数据通常比从 RAM 读取要慢得多。不过,在这个例子中,系统似乎还有足够的 RAM 和交换空间来处理当前的工作负载。

  1. 小明查看了磁盘使用情况。
df -h
小明笔记大公开之uptime命令:

当运行 df -h 命令时,你正在查看文件系统的磁盘空间使用情况。-h 选项表示“human-readable”,即以人类可读的格式(如 G、M)显示结果。

[christine@localhost ~]$ df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 38G 5.8G 32G 16% /
devtmpfs 471M 0 471M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 15M 472M 4% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/sda1 297M 147M 151M 50% /boot
tmpfs 98M 4.0K 98M 1% /run/user/42
tmpfs 98M 32K 98M 1% /run/user/1000

  • 文件系统:文件系统的名称,通常与挂载点或设备关联。
  • 容量:文件系统的总容量。
  • 已用:已使用的磁盘空间。
  • 可用:剩余的磁盘空间。
  • 已用%:已使用的磁盘空间的百分比。
  • 挂载点:文件系统被挂载到哪个目录。

在你的输出中:

  • /dev/sda3 是主要的根文件系统(root filesystem),它位于 sda 磁盘的第三个分区上,总共有 38G 的空间,已经使用了 5.8G,剩余 32G,使用了 16% 的空间,并挂载在根目录 / 下。
  • devtmpfs 和多个 tmpfs 是临时文件系统,用于存储临时文件或作为内存中的文件系统使用。这些文件系统通常不会占用硬盘空间,而是使用 RAM。从输出中可以看出,它们几乎没有被使用。
  • /dev/sda1/boot 分区,用于存放引导加载器(如 GRUB)和内核文件。这个分区总共有 297M 的空间,已经使用了 147M,剩余 151M,使用了 50% 的空间。
  • /run/user/42/run/user/1000 是为特定用户(ID 为 42 和 1000 的用户)提供的临时目录,通常用于存储会话特定的文件。这些目录也没有被大量使用。

从输出中,可以看到主要的文件系统和引导分区都有足够的可用空间。如果小明看到任何文件系统的已用百分比接近或超过 100%,那就需要采取措施来释放空间或扩展文件系统的容量。

  1. 小明使用top命令实时查看系统资源使用情况。
top
小明笔记大公开之top命令:

用于实时监视系统的动态运行状况。当运行 top 命令时,它会显示系统中各个进程的资源占用情况,包括 CPU 使用率、内存占用、运行时间等。同时,top 还会更新这些信息,以便可以看到系统的实时状态。

输出解释:

  • 第一行:显示系统时间、系统运行时间、登录用户数、系统负载(最近1分钟、5分钟、15分钟的平均值)。
  • 第二行:显示进程总数、正在运行的进程数、休眠的进程数、停止的进程数、僵尸进程数。
  • 第三行:显示 CPU 状态,包括用户空间占用 CPU 百分比、内核空间占用 CPU 百分比、空闲 CPU 百分比、等待 I/O 操作的 CPU 百分比、硬中断和软中断占用的 CPU 百分比。
  • 第四行:显示物理内存总量、已使用的物理内存、空闲的物理内存、已缓冲的内存。
  • 第五行:显示交换空间总量、已使用的交换空间、空闲的交换空间。

接下来是进程列表,每个进程都有一行信息,包括进程 ID、用户、优先级、CPU 占用率、内存占用、进程状态等。

常用交互命令:

top 运行过程中,可以按以下键进行交互:

  • P:按 CPU 使用率排序。
  • M:按内存使用量排序。
  • N:以 PID 顺序排序。
  • T:按 CPU 时间排序。
  • R:对当前排序进行反转。
  • k:杀死一个进程(需要输入 PID)。
  • q:退出 。
  • h:显示帮助信息。

注意了:

  • top 命令提供的信息是实时的,所以它会持续更新。
  • 如果你发现某个进程的 CPU 或内存占用过高,可能需要进一步检查该进程。
  • 在使用 top 时,要注意系统负载和 CPU 使用率,以确保系统没有过载或运行缓慢。

场景8:dd命令,小明的惊险操作

*这几步不用跟着做,容易出问题,了解即可

  1. 小明使用dd命令备份数据。

    sudo dd if=/dev/sda of=~/sda_backup.img bs=4M
    # dd 命令用于低级复制和转换文件,在这里,它被用来复制整个硬盘。名称来源于 "data duplicator" 或 "disk dump" 的缩写
    # if 是 "input file" 的缩写。of 是 "output file" 的缩写。bs 是 "block size" 的缩写。
    # if=/dev/sda: 这是 dd 命令的一个选项,指定输入文件(或设备)。
    # 注意:/dev/sda 通常指的是整个硬盘,而不是某个分区(如 /dev/sda1)。
    # bs=4M是 dd 命令的块大小(block size)选项。指定了每次读取和写入的块大小为 4MB,可以提高复制大文件的效率。
    
小明的提醒:

警告:这条命令极其危险,因为它会覆盖 ~/sda_backup.img 文件(如果它已经存在),并且如果错误地指定了 ifof 参数,它可能会导致数据丢失。在执行此类命令之前,请确保你完全理解它的工作原理,并已经采取了适当的预防措施(如备份)。

此外,对于备份整个硬盘,更安全和更常见的方法是使用专业的磁盘镜像工具,如 ddrescue(它可以处理坏扇区)或图形界面的工具,如 CloneZilla。

  1. 小明试图恢复数据,但不小心输入了错误的输出路径,导致系统崩溃。
sudo dd if=~/sda_backup.img of=/wrong/path bs=4M
# 系统崩溃,恢复重启后导师解释了错误的原因
  1. 小明再试一次,这次成功恢复了数据。
sudo dd if=~/sda_backup.img of=/dev/sda bs=4M

相关文章:

情景题之小明的Linux实习之旅:linux实战练习1(下)【基础命令,权限修改,日志查询,进程管理...】

小明的Linux实习之旅&#xff1a;基础指令练习情景练习题下 前景提要小明是怎么做的场景1&#xff1a;初识Linux&#xff0c;创建目录和文件场景2&#xff1a;权限管理&#xff0c;小明的权限困惑场景3&#xff1a;打包与解压&#xff0c;小明的备份操作场景4&#xff1a;使用G…...

k8s 证书更新

如何使用脚本更新Kubernetes集群证书 引言 Kubernetes集群中&#xff0c;由kubeadm初始化的证书有效期默认为一年。当这些证书接近或已经超过有效期时&#xff0c;它们必须被更新以保证集群的正常运作。本文将介绍如何使用特定脚本来更新这些证书&#xff0c;将它们的有效期延…...

Linux操作系统学习:day01

内容来自&#xff1a;Linux介绍 视频推荐&#xff1a;Linux基础入门教程-linux命令-vim-gcc/g -动态库/静态库 -makefile-gdb调试 day01 基础概念 Linux 是 UNIX 操作系统的一个克隆系统, 但是Linux是开源的。 Linux是一个基于文件的操作系统。操作系统需要和硬件进行交互…...

【Oracle生产运维】数据库服务器负载过高异常排查处理

说明 在Oracle数据库运维工作中&#xff0c;经常会遇到Oracle数据库服务器平均负载&#xff08;load average&#xff09;突然异常升高&#xff0c;如果放任不管&#xff0c;严重的情况下会出现数据库宕机、服务器重启等重大故障。因此&#xff0c;当发现数据库服务器平均负载…...

IIR和FIR两种滤波器有什么区别?

概念的区分 IIR&#xff08;Infinite Impulse Response&#xff0c;无限脉冲响应&#xff09;和FIR&#xff08;Finite Impulse Response&#xff0c;有限脉冲响应&#xff09;滤波器是两种常见的数字信号处理滤波器类型&#xff0c;它们在结构、性能和用途上有显著区别&#…...

让GNSSRTK不再难【第二天-第4部分】

第12讲 GNSS授时与PPS 12.1 为什么需要高精度时间 授时的传统理解就是时间传递或者对时。比如以前手机没这么方便时&#xff0c;大家还都使用石英钟手表看时间时&#xff0c;大家都习惯晚上七点准时对着中央一套的报时&#xff0c;来校准你家的机械钟或者挂钟&#xff0c;这就…...

「OC」UI练习(一)—— 登陆界面

「OC」登陆界面 明确要求 一个登陆界面的组成&#xff0c;用户名提示以及输入框&#xff0c;密码提示提示以及输入框&#xff0c;登陆按钮&#xff0c;以及注册按钮&#xff0c;根据以上要求我们将我们的组件设置为成员变量。 //viewControl.h #import <UIKit/UIKit.h>…...

基于机器学习和深度学习的NASA涡扇发动机剩余使用寿命预测(C-MAPSS数据集,Python代码,ipynb 文件)

以美国航空航天局提供的航空涡扇发动机退化数据集为研究对象&#xff0c;该数据集包含多台发动机从启动到失效期间多个运行周期的多源传感器时序状态监测数据&#xff0c;它们共同表征了发动机的性能退化情况。为减小计算成本&#xff0c;需要对原始多源传感器监测数据进行数据…...

计算机组成原理-常见计算题含IEE754

一、补码加减运算 二、溢出判断 采用一位符号位 采用双符号位 三、定点数的移位运算 算术右移 算数左移 反码的算术移位 补码的算术移位 四、浮点数的表示 一个右规的例子 五、IEEE754 移码...

InnoDB存储引擎非常重要的一个机制--MVCC(多版本并发控制)

Mysql是如何实现隔离性的&#xff1f;&#xff08;锁MVCC&#xff09; 隔离性是指一个事务内部的操作以及操作的数据对正在进行的其他事务是隔离的&#xff0c;并发执行的各个事务之间不能相互干扰。隔离性可以防止多个事务并发执行时&#xff0c;可能存在交叉执行导致数据的不…...

【DevOps】服务器硬件基础知识

目录 前言 1、处理器&#xff08;CPU&#xff09;&#xff1a;服务器的“大脑” 2、内存&#xff08;RAM&#xff09;&#xff1a;服务器的“工作台” 3、存储&#xff08;Storage&#xff09;&#xff1a;服务器的“仓库” 4、 网络接口&#xff08;NIC&#xff09;&…...

6.10 c语言

7.1 if-else语句 简化形式 if(表达式)语句块 阶梯形式 if(表达式1)语句块1 else if(表达式2&#xff09;语句块2 嵌套形式 if() if() 语句1 else 语句2 else if() 语句3 else 语句4 表达式一般情况下为逻辑表达式或关系表达式 #include <stdio.h>//从小到大排序,输出顺…...

jenkins插件之Jdepend

JDepend插件是一个为构建生成JDepend报告的插件。 安装插件 JDepend Dashboard -->> 系统管理 -->> 插件管理 -->> Available plugins 搜索 Jdepend, 点击安装构建步骤新增执行shell #执行pdepend if docker exec phpfpm82 /tmp/composer/vendor/bin/pdepe…...

vue3之基于el-image实现图片预览

实现的功能&#xff1a; 图片可放大预览&#xff0c;支持放大、缩小、向左向右旋转查看可点击任意一张图后进行左右切换查看大图 主要使用的方法&#xff1a;splice和concat 主要代码 // template中 <div><el-imagev-for"(item, index) in imgsData":src&q…...

wooyun_2015_110216-Elasticsearch-vulfocus

1.原理 ElasticSearch具有备份数据的功能&#xff0c;用户可以传入一个路径&#xff0c;让其将数据备份到该路径下&#xff0c;且文件名和后缀都可控。 所以&#xff0c;如果同文件系统下还跑着其他服务&#xff0c;如Tomcat、PHP等&#xff0c;我们可以利用ElasticSearch的备…...

Fedora的远程桌面

要在 Fedora 40 上开启远程桌面功能。 首先&#xff0c;要确保已安装 gnome-remote-desktop 和 vino 包。 这些软件包通常默认安装在 Fedora 的 GNOME 桌面环境中。 可以按照以下步骤操作&#xff1a; 1、判断电脑是否安装了 gnome-remote-desktop 和 vino 包: tomfedora:…...

CSS id选择器

目录 任务描述 相关知识 id选择器 id选择器语法 类选择器与id选择器的区别 编程要求 任务描述 在本关中&#xff0c;你将通过id选择器的方式完成页面菜单栏样式布局&#xff0c;栏目导航等任务。 完成任务之后&#xff0c;基本页面效果如下&#xff1a; 动态效果如下&am…...

22.搭积木

上海市计算机学会竞赛平台 | YACSYACS 是由上海市计算机学会于2019年发起的活动,旨在激发青少年对学习人工智能与算法设计的热情与兴趣,提升青少年科学素养,引导青少年投身创新发现和科研实践活动。https://www.iai.sh.cn/problem/717 题目描述 小爱用积木搭起一座金字塔。为…...

手机投屏到电脑时,手机提示连接失败

前言 注意&#xff0c;本方法建立在你已经通过其他帖子等解决了前置条件的情况下&#xff0c;手机提示连接失败情况下&#xff0c;包括但不限于关闭防火墙、安装无线投屏工具、手机和电脑连接在同一个WiFi频段下、关闭杀毒软件等。 具体操作方法 1、请进入设置 > 系统和…...

软件测试--Mysql快速入门

文章目录 软件测试-mysql快速入门sql主要划分mysql常用的数据类型sql基本操作常用字段的约束&#xff1a;连接查询mysql内置函数存储过程视图事务索引 软件测试-mysql快速入门 sql主要划分 sql语言主要分为&#xff1a; DQL&#xff1a;数据查询语言&#xff0c;用于对数据进…...

什么是PV操作

PV操作是一种在操作系统中用于同步和互斥的机制,它基于信号量(Semaphore)的概念。在并发编程中,多个进程或线程可能会同时访问共享资源,PV操作可以用来确保这些访问是同步的,以防止竞态条件和数据不一致的问题。 PV操作包括两个原子操作: P操作(Proberen,测试):这…...

差动放大器

差动器的出现是为了解决直接耦合电路存在的零点漂移问题&#xff0c;另外&#xff0c;差动放大器还有灵活的输入&#xff0c;输出方式。 一&#xff0c;基本差动放大器 差动放大器在电路结构上具有对称性&#xff0c;三极管VT1&#xff0c;VT2同型号&#xff0c;R1R2,R3R4,R5…...

【数据结构与算法 经典例题】括号匹配问题

&#x1f493; 博客主页&#xff1a;倔强的石头的CSDN主页 &#x1f4dd;Gitee主页&#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏&#xff1a;《数据结构与算法 经典例题》C语言 期待您的关注 ​​ 目录 一、问题描述 二、解题思路 &#x1f343;破解之道 &#x1f343;…...

2024年6月最新开源电视影视TVAPP原生源码和后台管理平台源码及完整教程

本套源码为本人维护更新完善半年左右的还在使用开发的源码&#xff0c;与市面上倒卖的残次品不一样&#xff0c;没有可比性&#xff0c;向下兼容安卓4.0&#xff0c;向上兼容安卓13以上TV电视系统&#xff0c; 完全无闪退&#xff0c;弹窗报错&#xff0c;卡死、异常死循环残次…...

[大模型]GLM4-9B-chat Lora 微调

本节我们简要介绍如何基于 transformers、peft 等框架&#xff0c;对 LLaMA3-8B-Instruct 模型进行 Lora 微调。Lora 是一种高效微调方法&#xff0c;深入了解其原理可参见博客&#xff1a;知乎|深入浅出 Lora。 这个教程会在同目录下给大家提供一个 nodebook 文件&#xff0c…...

目标检测算法YOLOv9简介

YOLOv9由Chien-Yao Wang等人于2024年提出&#xff0c;论文名为&#xff1a;《YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information》&#xff0c;论文见&#xff1a;https://arxiv.org/pdf/2402.13616 &#xff1b;源码见: https://github.com/W…...

达梦数据库搭建守护集群

前言 DM 数据守护&#xff08;Data Watch&#xff09;是一种集成化的高可用、高性能数据库解决方案&#xff0c;是数据库异地容灾的首选方案。通过部署 DM 数据守护&#xff0c;可以在硬件故障&#xff08;如磁盘损坏&#xff09;、自然灾害&#xff08;地震、火灾&#xff09…...

OpenGL-ES 学习(6)---- Ubuntu OES 环境搭建

OpenGL-ES Ubuntu 环境搭建 此的方法在 ubuntu 和 deepin 上验证都可以成功搭建 目录 OpenGL-ES Ubuntu 环境搭建软件包安装第一个三角形基于 glfw 实现基于 X11 实现 软件包安装 sudo apt install libx11-dev sudo apt install libglfw3 libglfw3-dev sudo apt-get install…...

Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。

文章目录 前言一、项目初始化搭建1、创建项目&#xff1a;test_models_django2、创建应用app01 二、配置mysql三、创建model实例&#xff0c;自动创建数据库表1、创建对象User类2、执行命令 四、思考问题&#xff08;****&#xff09;1、是否会生成新表呢&#xff08;答案报错&…...

对象创建的4种模式

1. 工厂模式 这种模式抽象了创建具体对象的过程&#xff0c;用函数来封装以特定接口创建对象的细节 缺点&#xff1a;没有解决对象识别的问题&#xff08;即怎样知道一个对象的类型&#xff09; function createPerson(name, age, job) {var o new Object();o.name name;o.ag…...

什么网站可做浏览器首页/网站开发培训

11月17日&#xff0c;阿里巴巴集团发布2023财年二季度财报。于2022年9月30日止季度&#xff0c;抵销跨分部交易前&#xff0c;菜鸟本季度营业收入同比增长26%至182.82亿元&#xff0c;外部收入占比进一步提升至73%。通过持续建设高质量的产业互联网&#xff0c;做全球化的长期主…...

wordpress的集成环境/网站推广的方式有哪些

转载于:https://www.cnblogs.com/jkwang/p/5841234.html...

电子商务知名网站/网站优化推广方案

可能大家在使用DataGrid编辑数据的时候会觉得要点击最后的编辑列的按钮来修改数据不是很方便&#xff0c;在今天的例子中给出一种比较方便的操作方法&#xff1a;要修改数据点击这一行&#xff0d;》鼠标放在哪个文本框就会选中哪个文本框的内容&#xff0c;直接可以进行修改&a…...

寻求南宁网站建设人员/专业seo优化推广

怀旧是一种什么滋味 怀旧是一种什么滋味&#xff0c;好像有人在你心上攥了一下。 感谢这个时代将我们记录默默保存 感谢某技术博客平台竟然还能保存自己10年前的博客文章 早起的鸟儿有虫吃 今天需要在某网站下载个资料&#xff0c;如今是知识付费时代哪个网站不搞个VIP服务都…...

征求网站建设意见的通知/2024年最新时政热点

在第三期项目的视频中&#xff0c;官方提供了一整套新的工具链&#xff0c;bootloader, 内核和文件系统&#xff08;arm-linux-gcc_4.3.2, uboot-2012.04.01, linux-3.4.2&#xff09;其中uboot-2012.04.01来源于毕业班&#xff0c;其下载烧写功能远不如uboot-1.1.6&#xff0c…...

做网站采集内容/杭州网站seo外包

#!/bin/bash echo "wxc_dump.sh is running!" #抓包600秒保存一个包以时间命名 tcpdump -i ens160 -s0 -G 600 -Z root -w ./%Y%m%d_%H%M%S.pcap & #while条件括号里面不能少两个空格 #find当前路径所有后缀.pcap&#xff0c;文件内容最后修改时间比当前大于120分…...