Yuxxxxxxxxxx's Blog
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于

Linux 中断机制(二)之中断子系统框架

[toc] 一、概述一个完整的中断子系统框架可以分为四个层次, 由上到下分别为:用户层、 通用层、 硬件相关层和硬件层, 每个层相关的介绍如下所示: 用户层:用户层是中断的使用者,主要包括各类设备驱动。 这些驱动程序通过中断相关的接口进行中断的申请和注册。 当外设触发中断时, 用户层驱动程序会进行相应的回调处理,执行特定的操作。 通用层:通用层也可称为框架层,它是硬件无关的层次。 通用层的代码
2024-08-14
Linux > 中断机制
#Linux #中断机制

Linux 中断机制(一)之中断和异常

@toc 一、什么是中断1、概述中断(interrupt)是指在 CPU 正常运行期间, 由外部或内部事件引起的一种机制。 当中断发生时,CPU 会停止当前正在执行的程序,并转而执行触发该中断的中断处理程序。处理完中断处理程序后,CPU 会返回到中断发生的地方, 继续执行被中断的程序。中断机制允许 CPU 在实时响应外部或内部事件的同时,保持对其他任务的处理能力。 中断的流程图如下: 2、中断
2024-08-12
Linux > 中断机制
#Linux #中断机制

Linux 下利用 Valgrind 进行内存调试

[toc] 一、概述Valgrind 是一个开源的内存调试和性能分析工具,用于帮助开发者找出程序中的内存错误,如内存泄漏、使用未初始化的内存、非法内存访问等问题。它在 Linux 平台上广泛使用,并且支持下多种处理器架构。 二、Valgrind 的使用1、基本格式1valgrind --tool=memcheck -–gen-suppressions=all -–show-leak-kinds=
2024-08-11
Linux > 性能优化/调试
#Linux #性能优化/调试

Linux 进程调度(三)之进程的优先级

@toc 一、概述在 Linux 中,每个进程都有一个优先级。优先级决定了进程在系统资源分配中的先后顺序。Linux 中的进程优先级范围从 -20 到 +19,其中 -20 为最高优先级,+19 为最低优先级。 二、进程的优先级1、基础概念Linux 中的进程优先级分为静态优先级和动态优先级。 静态优先级:静态优先级是在创建进程时分配的,通常由管理员或程序员指定。静态优先级决定了进程的基本优先
2024-08-10
Linux > 进程调度
#Linux #进程调度

Linux 错误码

@toc 一、概述在 Linux 系统中,错误码是用来表示操作系统运行过程中发生的错误的数字代码。错误码通常由负数表示,0 表示成功,正数表示警告或其他非致命错误。 为了开发者更好地处理系统错误,内核中预定义的错误几乎涵盖了我们可能遇到的所有问题。一些错误的宏定义在 include/uapi/asm-generic/errno-base.h,还有一部分定义在 include/uapi/asm-g
2024-08-09
Linux
#Linux #错误码

Linux 进程调度(二)之进程的上下文切换

@toc 一、概述进程的上下文切换是指在多任务操作系统中,当操作系统决定要切换当前运行的进程时,将当前进程的状态保存起来,并恢复下一个要运行的进程的状态。上下文切换是操作系统实现进程调度和实现多任务的关键机制之一。 操作系统一个非常重要的功能就是进程的管理,通过调度策略选择合适的进程来执行,对于单个 CPU 而言,进程是串行分时执行,这就需要内核支持进程切换,挂起一个正在 CPU 中执行的进程,
2024-08-09
Linux > 进程调度
#Linux #进程调度

Linux 调试之动态打印

[toc] 一、概述在 kernel 驱动代码中,使用动态输出是系统内核调试的重要手段之一,printk 打印是全局的,只能设置输出等级,而且使用 printk 每次都要重新编译内核,很不方便。。而动态输出可以在不需要重新编译内核的情况下,方便的打印出内核的 debug 信息。动态输出可以动态选择打开某个内核子系统的输出,可以有选择性地打开某些模块的输出,printk 被 dev_info,de
2024-08-08
Linux > 性能优化/调试
#Linux #性能优化/调试

Linux 下查看 CPU 使用率

[toc] CPU 使用率是最直观和最常用的系统性能指标,更是我们在排查性能问题时,通常会关注的第一个指标。 一、什么是 CPU 使用率Linux 作为一个多任务操作系统,将每个 CPU 的时间划分为很短的时间片,再通过调度器轮流分配给各个任务使用,因此造成多任务同时运行的错觉。 为了维护 CPU 时间, Linux 通过事先定义的节拍率(内核中表示为 HZ),触发时间中断,并使用全局变量 Ji
2024-08-07
Linux > 性能优化/调试
#Linux #Linux 命令 #性能优化/调试

Linux 利用 ftrace 分析内核调用

[toc] 一、概述在 Linux 中,ftrace 是一种用于跟踪内核函数调用和事件的工具。它是一个功能强大的跟踪框架,可用于分析和调试内核性能问题。 ftrace 提供了多种功能,包括函数跟踪、事件记录和性能分析等。它能够记录函数的调用和返回信息,以及函数执行的路径和时间。通过跟踪这些信息,我们可以了解到内核函数的执行情况,从而定位和解决性能问题。 ftrace 使用了内核中的一些机制来实现
2024-08-07
Linux > 性能优化/调试
#Linux #Linux 命令 #性能优化/调试

Linux 中 core dump 异常的分析

[toc] 一、概述 在 UNIX 系统中,常将“主内存称为核心(core),因为在使用半导体作为内存材料之前,便是使用核心(core)。而核心映像(core image)就是 “进程”(process)执行当时的内存内容。当进程发生错误或收到 “信号”(signal)而终止执行时,系统会将核心映像写入一个文件,以作为调试之用,这就是所谓的核心转储(core dump)。 Core dump
2024-08-06
Linux > 性能优化/调试
#Linux #Linux 命令 #调试
1…678910

搜索

Hexo Fluid