Linux内核学习笔记~暂告一段落

Linux内核编译与安装(完整过程)【Ubuntu18.04下】 0 前言 暑假作业的第一步。 第一次弄,失败了不少次,最后发现只要步骤都对,其实很简单,只是时间问题。 起初在CentOS7上编译安装5.13和4.14的内核都不行,也不知道是哪里出了问题,查了一下说似乎是GCC版本与内核版本不兼容,然后赶紧太麻烦了,遂放弃。 然后装了一个Ubuntu18.04,可以make menuconfig了,但是手贱不知道哪里弄错了,又不行了。 又装了Ubuntu个10.04,想装了3.6版本的内核(怕高版本不兼容),无奈刚开始没找到资源(其实很好找),还是用Ubuntu18.04 阅读详情

一个完整的操作系统主要由4部分组成:硬件、操作系统、操作系统服务和用户应用程序。


Linux内核体系结构的五大模块:

1.进程调度模块:负责控制进程对CPU资源的使用;

2.内存管理模块:确保所有进程能够安全的共享机器主内存区;

3.文件系统模块:支持对外设备的驱动和储存,且支持虚拟文件系统;
4.进程间通信模块:用于支持多种进程间的信息交换方式;

5.网络接口模块:提供对多种网络通信标准的访问并支持许多网络硬件。


第一次内核编程心得:

1.编写模块程序(hello.c文件)

2.编写Makefile文件(Makefile文件,不用指定文件格式,系统自动识别)

3.执行make操作,生成hello.o、hello.ko等文件

4.将模块加到内存中

sudo insmod hello.ko

5.利用dmesg命令可以查看到hello.c中的输出信息

6.利用rmmod卸载当前模块

Mission Comelete~




我表示压力好大

有点一头雾水的感觉了

内核,想说爱你不容易


给大家推荐个网站,一起学习

Linux内核之旅:http://www.kerneltravel.net/

操作系统原理:【优麒麟】linux内核添加系统调用 在底端添加如下代码。 阅读详情

相关推荐

Linux 内核进程管理之基础

没有废话,内存管理暂时告一段落,正式进入进程管理的内容。内核通过 task_struct 描述进程 用命令 pstree 可以让内核以树形的结构把进程之间的关系列出来,如下图:这是进程在内...

Peter的专栏 529

Linux内核移植介绍

LINUX 内核移植 一、内核移植概述 二、Linux内核的目录 三、 内核配置 四、Kbuild Makefile 五、编译连接内核 六、内核启动过程 七、系统环境变量的设置方法 八、实验步奏 与其它操作系统相比,Linux最大的特点:它是一款遵循GPL(General Public License GNU通用公共许可证(简称为GPL),是由自由软件基金会发行的用于计算机软件的许可证。)的操作系统,我们可以自由地使用、修改、和扩展它。正是由于这一特色,Linux受到越来越多人士的青睐。于是,一个经常会被

hhltaishuai的博客 4202

用Navicat轻松管理魔兽世界私服数据库:修改IP、添加装备的实用技巧

本文详细介绍了如何使用Navicat管理魔兽世界私服数据库,包括修改服务器IP、添加自定义装备和调整角色属性等实用技巧。通过专业的SQL操作指南,帮助玩家轻松实现私服的高级定制,提升游戏体验。

fanta的博客 941

linux内核关闭tcp校验,linux内核tcp调优规范与方案

1、TCP常用内核参数优化上一篇我们介绍了服务器上有大量的TIME_WAIT等待,可能造成的危害,以及给web服务器带来负担。如何解决这个问题呢,其实,解决思路很简单,就是让服务器能够快速回收和重用那些TIME_WAIT的资源即可。这就是对tcp调优。在linux系统上,对tcp调优主要是通过调整Linux内核参数来实现的,其实主要是对/proc文件系统进行设置,/proc文件系统是一种内核和内核...

weixin_42124497的博客 1381

飞凌OK3588-C Linux R4系统下MIPI YUV摄像头CSI尺寸错误排查与极性适配方案

本文详细介绍了在飞凌OK3588-C平台的Linux R4系统下调试MIPI YUV摄像头时遇到的'csi size err'错误排查与极性适配方案。通过分析信号极性、驱动参数调整及FPGA协同调试,提供了从硬件检测到系统级调试的完整解决方案,帮助开发者快速解决类似问题。

bean的博客 259

面板数据分析中的随机前沿软件FRONTIER Version 4.1应用

随机前沿模型是一种用于评估单位效率的统计方法。它考虑了输入和输出的随机性,允许我们在效率评估中引入不确定性。随机前沿模型通常用于评估生产单位、金融机构、医院等各种类型的决策单元的效率。FRONTIER是一个广泛使用的随机前沿分析软件,具有用户友好的界面和强大的功能。它提供了估计效率、前沿分析和模型比较的工具,使用户能够深入研究单位的效率和绩效。面板数据是一种包含多个单位(通常是时间序列数据)的数据类型,可以用于分析单位在不同时间点的变化和效率。

目标检测专栏持续更新中,改进YOLO系列通用,适用v5、v7、v8、所有博客均是团队原创博客,所有文章禁止转载,违者必究。 2982

linux 内核无线子系统,浅谈 Linux 内核无线子系统

1 全局概览在开始探索图一 Linux 无线网络结构示意图图示中的虚线内展示的是内核空间的情况。用户空间的程序运行在最上层,而硬件相关的设备则在最下面。图示中左边为以太网设备,右边为通常我们把 Linux 内核无线子系统看成两大块:Linux 内核无线子系统统一各种 WiFi 设备,并处理 OSI 模型中最底层的 MAC 、 PHY 两层。若进一步划分, MAC 层可以分为 MAC 高层和 MAC...

weixin_29376541的博客 580

maya权重拷贝一对一,一对多

是不是有时候盔甲很多很碎头很大,用代理一个个拷贝很麻烦吧 用下面代码直接运行进行一对多或者一对一拷贝 第一个先选择参考物体,加选其他一堆有的没的有权重或没权重的物体执行一键拷贝,就可以啦 以下是源码送上,带走吧 ------------------------ #! -*- coding:utf -8 -*- #author:liubingdong #date:20...

weixin_30852367的博客 1532

Linux内核源码安装

我们安装一下Linux内核源码,方便我们学习Linux内核也方便我们进行eBPF开发时查看Linux内核的一些信息本篇博客我们学习了如何安装linux内核源码。

https://github.com/cv70 813

海康工业相机BayerRG8转BGR8实战:手把手教你用OpenCV实现高效图像转换

本文详细解析了海康工业相机BayerRG8格式到BGR8格式的高效转换实战。针对工业视觉项目中高帧率、大分辨率场景下的性能瓶颈,文章对比了海康SDK原生方案与OpenCV多种转换方法的优劣,并提供了从基础实现到高级优化(如多线程流水线、内存管理、SIMD指令集应用)的完整代码示例与性能调优策略,帮助开发者构建稳定、高效的图像处理系统。

weixin_29237635的博客 524

win11系统ping另一台电脑上VMware虚拟机的IP

我是用了两台电脑,所以刚才遇到一个问题就是两台电脑的IP 在同一局域网内ping不通。于是就找了很多资料,经过坚强的绝望后终于解决了。 下开始解决问题: VMWare提供了三种工作模式:bridged(桥接模式)、NAT(网络地址转换模式)和host-only(主机模式)。 1. bridged(桥接模式)   在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立主机,它可以访问网内任何一台机器。在桥接模式下,你需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚

qq_42817360的博客 3238

linux的idle是什么进程,Linux内核的idle进程分析

1. idle是什么简单的说idle是一个进程,其pid号为 0。其前身是系统创建的第一个进程。也是唯一一个没有通过fork()产生的进程。在smp系统中,每一个处理器单元有独立的一个执行队列,而每一个执行队列上又有一个idle进程,即有多少处理器单元。就有多少idle进程。系统的空暇时间,事实上就是指idle进程的"执行时间"。既然是idle是进程。那我们来看看idle是怎样被创建,又详细做了哪...

weixin_42356659的博客 1933

DaVinci配置DID之三:代码实现

本系列主要基于DaVinCi工具链来展开具体DID读写的配置以及最终实现。1,CDD准备2,工具链配置3,代码实现4,验证结果本文讲述流程3话不多说,走你~博主是AutoSar小白,如果哪里表达的有问题,还请大佬们指点指点哈。接下来,让我们在下章关于测试验证的博文再相会哈~

weixin_48498880的博客 5361

通过gdb调试分析Linux内核的启动过程

作者:吴乐 山东师范大学 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一、实验流程 1.打开环境 执行命令:cd LinuxKernel/ 执行命令:qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img MenuOS便可

cs_assult的专栏 825

包成功安装tiny-cuda-nn,记录安装过程中的问题解决,附带pytorch3d安装【踩坑指南】

该包可以显著提高NeRF训练速度,是和NeRFstudio等框架中,必须使用的。本文提供tiny-cuda-nn可以安装的完整包的下载链接,可以直接上传到项目中安装。附带笔者遇到的问题的解决方案。

zik的博客 7030

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

分析linux内核的idle的知识

<br />      Linux系统越来越受到电脑用户的欢迎,于是很多人开始学习Linux时,学习linux,你可能会遇到linux内核问题,这里将介绍linux内核中idle知识,在这里拿出来和大家分享一下。<br />1. idle是什么<br />  简单的说idle是一个进程,其pid号为0。其前身是系统创建的第一个进程,也是唯一一个没有通过fork()产生的进程。在smp系统中,每个处理器单元有独立的一个运行队列,而每个运行队列上又有一个idle进程,即有多少处理器单元,就有多少idle进程。系

531

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

全面解析Linux 内核 3.10.x - 进程链表

From: 全面解析Linux 内核 3.10.x - 进程管理 把你的心、我的心、串一串串一株幸运草、串一个同心圆 - Love一、双向链表在内核中的运用传统的双向链表即表示链表有双头,双连表的好处在于不管是插入亦或是查找,其算法复杂度明显比单链表要优化很多,但是双连表由于其本身的复杂性,故而很多程序员都是避而不见,或者视而不见! 但是在这里我们必须将此重新掌握! 还记得链表的定义吗? 有指

何文的专栏 3059

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

《Linux内核分析》课程总结

朱宇轲 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 不知不觉,在网易云课堂上追了两个多月的课程《Linux内核分析》就要告一段落了。在课程即将结束的时刻,我想将这八周的课程串起来,进行一个简单的总结,同时讲一讲自己上这门课的感悟和体会,以期再接再厉,继往开来。 ...

csshuke的专栏 454

暂别C++的伤痛,驰骋Linux内核之海

 暂别C++的伤痛,驰骋Linux内核之海 作为嵌入式程序员,一次次倒在C++的大门下,也让我失去了很多机会无奈现在的单位都喜欢全能型人才即便是招个门卫保安,他也希望你计算机技能样样精通也正是在这种大背景下即便我应聘嵌入式程序员,也一样要考和嵌入式无关的C++因为很多公司的笔试题都是统一出卷的,嵌入式一样考C++本以为把C学精通了就行了,但C++却成了我的痛

Sailor_forever 1420

Linux内核之pid为0和pid为1【转】

(转自:https://blog.youkuaiyun.com/jingyilin2008/article/details/7815508?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159222398219725222455913%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=159222398219725222455913&biz_

Uaena的博客 2092

linux之mini2440内核移植

与其它操作系统相比,Linux最大的特点:它是一款遵循GPL(General Public License  GNU通用公共许可证(简称为GPL),是由自由软件基金会发行的用于计算机软件的许可证。)的操作系统,我们可以自由地使用、修改、和扩展它。正是由于这一特色,Linux受到越来越多人士的青睐。于是,一个经常会被探讨的问题出现了,即关于Linux系统的移植。对于操作系统而言,这种移植通常是跨平台

一梦十年 1546

Linux驱动开发(5)------- linux内核的gpiolib学习

目录 .1、gpiolib学习重点 (1)gpiolib的建立过程 (2)gpiolib的使用方法:申请、使用、释放 (3)gpiolib的架构:涉及哪些目录的哪些文件 5.4.9.2、gpiolib的学习方法 (1)以一条主线进去,坚持主线 (2)中途遇到杂碎知识,彻底搞定之,然后继续主线 (3)随时做笔记以加深理解和记忆 (4)学习途中注意架构思想,提升自己大脑的空间复杂度 5.4.9.3、主线1:gpiolib的建立 (1)找到目标函数 smdkc110_map_io s5pv210_gpiolib_

big_C的博客 668

linux 单步启动_通过gdb调试分析Linux内核的启动过程

作者:吴乐 山东师范大学一、实验流程1.打开环境执行命令:cdLinuxKernel/执行命令:qemu-kernellinux-3.18.6/arch/x86/boot/bzImage-initrdrootfs.imgMenuOS便可以成功启动。可以测试三个命令“help,version,quit”的工作情况2、使用gdb跟踪调试内核执行命令:qemu-kernellinux-3....

weixin_39630247的博客 239

Linux内核升级后NVIDIA驱动失效:从CUDA错误到韧性工作流构建

上周,我像往常一样,在收到系统更新提示后,顺手点了“升级”。这次是内核从 6.x 系列跃迁到 7.2。重启,登录,桌面正常亮起,一切似乎风平浪静。对于一个长期在 Linux 上折腾开发、炼丹和日常办公的人来说,内核升级早已是家常便饭,我甚至没抱什么特别的期待——直到我打开终端,准备启动那个依赖 CUDA 的模型训练脚本。 熟悉的错误信息弹了出来,不是“CUDA unavailable”,而是更底层、更让人心头一紧的提示: torch.acceleratorerror: cuda error: no kern

weixin_30394981的博客 474

linux内核学习总结

丰富充实的linux学习已经告一段落,通过此次学习,对linux有了初步的认识和了解,形成了一个大概的框架,对linux的工作过程也有了基本的概念。对课程的内容总结如下: 1.计算机是如何工作的 从硬件的角度看: 根据冯诺依曼​体系结构, 1)cpu通过总线根据cs:ip的值从内存的代码段读取一条指令,读取的指令进入指令缓冲器; 2)然后ip=ip+所取指令的长度,从而指...

weixin_30535843的博客 167
下一篇: Ubuntu下SNMP的安装
Huboss
博客等级 码龄17年 22粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值