内核

消息队列最大数目

消息队列: 1.每次msgrcv一个消息,1.那个消息会在内核中移除 2.每次msgrcv都只会给一个消息出来,不管你rcv用多大的buf来接收,都是可以的。如果msgrcv的bufSize小于实际的该消息的大小,那么可以设置一个标志:表示截断。 如果不设置,那么会报错。取不出来。 2.消息满了,则默认0为阻塞,直到有了空间位置,才能snd消息进入到内核。...

linux —— 编译linux内核

目录:     0、测试环境                  1、获得最新内核源代码       2、编译源代码                 3、运行新的内核 0、测试环境: 我的系统 : ubuntu 16.04 LTS (内核版本:4.4.0-36-generic ) 下载源代码内核版本 : Linux 4.8-rc6...

举个栗子看如何做MySQL 内核深度优化

本文由云+社区发表 作者介绍:简怀兵,腾讯云数据库高级工程师,负责腾讯云CDB内核及基础设施建设;先后供职于Thomson Reuters和YY等公司,PTimeDB作者,曾获一项发明专利;从事MySQL内核开发工作8年,具有丰富的优化经验;在分布式存储等领域有较丰富经验。 MYSQL数据库适用场景广泛,相较于Oracle、DB2性价比更高,Web网站、日...

Linux内核定时器struct timer_list

1、前言  Linux内核中的定时器是一个很常用的功能,某些需要周期性处理的工作都需要用到定时器。在Linux内核中,使用定时器功能比较简单,需要提供定时器的超时时间和超时后需要执行的处理函数。 2、常用API接口  在Linux内核中使用全局变量jiffies来记录系统从启动以来的系统节拍数,当系统内核启动的时候,会将该jiffies初始化为0,该定义在...

内核如何启动根文件系统?

当u-boot開始运行bootcmd命令,就进入Linux内核启动阶段。与u-boot类似,普通Linux内核的启动过程也能够分为两个阶段,但针对压缩了的内核如uImage就要包含内核自解压过程了。本文以linux-2.6.37版源代码为例分三个阶段来描写叙述内核启动全过程。第一阶段为内核自解压过程,第二阶段主要工作是设置ARM处理器工作模式、使能MMU、...

服务器使用bbr加速配置

服务器内核升级:     以centos7为例,配置之前可使用以下命令查看内核版本,若是4.0以上则无需对内核升级; uname -r     对内核升级的方法:   直接使用以下命令进行内核版本的下载: rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://...

NginxI/O模型理论基础

I/O模型介绍   同步IO        关注的是消息通信机制  调用者需要等待被调用者先执行完毕才能往下继续执行   被调用者在执行完自己的任务后并不会同之调用者执行结果需要调用者自己去获取被调用者的执行状态   异步IO      关注的是消息通信机制     调用者向被调用者发起调用后 被调用者会自动通过状态,通知或者回调机制主动通知调用者自己的运...

Linux 内核编译步骤及配置详解

linux 系统体系结构: linux kernel体系结构:arm有7种工作模式,x86也实现了4个不同级别RING0-RING3,RING0级别最高,这样linux用户代码运行在RING3下,内核运行在RING0,这样系统本身就得到了充分的保护 用户空间(用户模式)转到内核空间(系统模式)方法:·系统调用·硬件中断 linux kernel 体系结构...

linux4.1.4上移植ME909s-821,MU609 4G模块驱动

linux上4G模块是比较常用的,刚开始移植4G模块驱动的时候,废了比较多心思和时间,但也收获了很多,经过这个过程更加认识到4G模块在linux上的工作。 网上资料也比较多,但是比较杂,经过一番折腾,所以想写一个比较全面的关于linux上移植4G模块驱动的方法 关于4G模块常见的品牌与型号:    品牌    型号 市场价格 芯片组 状态 HUA...

网络通信IO的演变过程(一)(一个门外汉的理解)

以前从来不懂IO的底层,只知道一个大概,就是输入输出的管道怼到一起,然后就可以传输数据了。 最近看了周志垒老师的公开课后,醍醐灌顶。 所以做一个简单的记录。 0 计算机组成原理相关 0.1. 计算机的基本组成大家都了解一点,如下图,当操作系统启动的时候,首先进入内存的除了BIOS,然后就是Linux内核程序。 内核暂时先理解成系统程序,比如我们想通过键...