内核

PHP7内核实现原理-启动过程

### **FPM 启动和初始化 worker 的过程** ![](https://img2023.cnblogs.com/blog/3272842/202309/3272842-20230908221432192-1513365895.png) 代码在源码 /sapi/fpm/fpm/fpm_ma ......
内核 原理 过程 PHP7 PHP

PHP7内核实现原理-基本架构

### 发展史 PHP 最早是由 Lerdorf 于 1995年,使用 Perl 语言,以 Personal Home Page Tools (PHP Tools) 的形式创建的,目的是为了方便记录个人网站的访客记录和支持留言本等功能,此时称为 **PHP 1**。 后来越来越多的网站开始使用 PH ......
内核 架构 原理 PHP7 PHP

PHP7内核实现原理-基本环境和C基础

### 编译安装 PHP 7.1.0 下载 7.1.0 源码压缩包:[www.php.net/releases/](http://www.php.net/releases/) `./configure --prefix=/Users/lisong/Documents/workspace/php-sr ......
内核 原理 环境 基础 PHP7

内核升级

#### 一、内核升级 ###### 在企业用过的内核升级 ```bash # centos7.6内核升级4.19 前提条件 已配置好基础yum源,参考yum源配置 1、获取内核的rpm包 http://193.49.22.109/elrepo/kernel/el7/x86_64/RPMS/ 从上述 ......
内核

视频监控汇聚平台EasyNVR安防视频内核启动正常,但视频无法播放是什么原因?

EasyNVR是基于RTSP/Onvif协议的安防视频云服务平台,可实现设备接入、实时直播、录像、检索与回放、云存储、视频分发、级联等视频能力服务,可覆盖全终端平台(电脑、手机、平板等终端),在智慧工厂、智慧工地、智慧社区、智慧校园等场景中有大量落地应用。 近期有用户向我们求助,EasyNVR无法正 ......
视频 视频监控 内核 原因 EasyNVR

基于高性能Cortex®-M33内核STM32H562RIV6、STM32H562RIT6、STM32H562RGV6 32-bit ARM微控制器

STM32H562微控制器具有更高的性能和能效以及更多片内外设,扩展了STM32高性能产品组合。该系列微控制器具有1至2 MB的Flash存储器、640 KB的SRAM,并采用64至176引脚封装,包括BGA、LQFP和VFQFPN68封装。 ......
H562 制器 32H 562 STM

kernel内核启动流程

``` (1)自解压代码 linux-2.6.22.6\arch\arm\boot\compressed\head.S 对比于linux-2.6.22.6\arch\arm\kernel\head.S, 是自解压代码+原本的代码,执行时执行自解压代码的内容 ``` ``` (2)第一阶段: ENTR ......
内核 流程 kernel

编译Linux 2.6.34内核

编译准备 编译环境:Ubuntu 14.04 GCC版本:4.8.4 编译的内核版本:Linux 2.6.34 内核源码下载:https://mirrors.edge.kernel.org/pub/linux/kernel/ 编译过程 解压源码linux-2.6.34.tar.gz,进入源码目录执行 ......
内核 Linux 34

smartkit批量配置主机更新(内核不更新)和IP地址脚本

#!/bin/bash # # system init config # # enable root login sed -i.bak '31 a\PermitRootLogin yes' /etc/ssh/sshd_config /etc/init.d/ssh restart # enable o ......
内核 脚本 smartkit 主机 地址

第4篇 sound.c分析(应用层如何调用到内核层的)

原文链接:https://blog.csdn.net/yangguoyu8023/article/details/122114620 ## 1. alsa_sound_init alsa的核心入口函数是sound\core\sound.c中的alsa_sound_init ``` static st ......
应用层 内核 sound

深入理解Linux内核——内存管理(4)——伙伴系统(1)

提要:本系列文章主要参考`MIT 6.828课程`以及两本书籍`《深入理解Linux内核》` `《深入Linux内核架构》`对Linux内核内容进行总结。 内存管理的实现覆盖了多个领域: 1. 内存中的物理内存页的管理 2. 分配大块内存的伙伴系统 3. 分配较小内存的slab、slub、slob分 ......
内核 内存 伙伴 系统 Linux

2操作系统内核结构

内核是操作系统的核心部分,它管理着系统的各种资源。内核可以看成连接应用程序和硬件的一座桥梁,是直接运行在硬件上的最基础的软体实体 目前从内核架构来划分,可分宏内核(复杂)和微内核(简单) 微内核是指将用户功能迁移到外部 操作系统内核结构:用户态和核心态 用户态:客户进程、服务器、等 核心态:进程间通 ......
内核 结构 系统

linux内核等待队列详解

https://www.cnblogs.com/xinghuo123/p/13347964.html 等待队列用于使得进程等待某一特定事件的发生,无需频繁的轮询,进程在等待周期中睡眠,当时间发生后由内核自动唤醒。 1 数据结构 1.1 等待队列头 等待队列结构如下,因为每个等待队列都可以再中断时被修 ......
队列 内核 linux

Linux 内核设备驱动程序的IO寄存器访问 (下)

Linux 内核设备驱动程序通过 `devm_regmap_init_mmio()` 等函数获得 `struct regmap` 结构对象,该对象包含可用于访问设备寄存器的全部信息,包括定义访问操作如何执行的 bus,定义了各个设备寄存器的读写属性的 config,以及加速设备寄存器访问的 cach ......
寄存器 内核 驱动程序 程序 设备

[内核源码] epoll 源码实现-预备知识

epoll 源码涉及到很多知识点:(socket)网络通信,进程调度,等待队列,socket 信号处理,VFS(虚拟文件系统),红黑树算法等等知识点。有些接口的实现,藏得很深,参考了不少网上的帖子,在此整理一下。 本文主要为 《[epoll 源码走读] epoll 实现原理》,提供预备知识。 1. ......
源码 内核 知识 epoll

如何理解用户态和内核态?

简介 下图为 Linux 32位操作系统的进程空间分配图(来源于网络),低位的 3G 属于进程自己使用的内存,高位的 1G 是内核空间,内核空间由所有进程共享。 内核空间和用户空间指的是虚拟内存。当进程运行在内核空间时就处于内核态,当进程运行在用户空间时就处于用户态。 现代CPU主要的设计目标就是多 ......
内核 用户

[内核源码] epoll 实现原理

https://wenfh2020.com/2020/04/23/epoll-code/ 文章主要对 tcp 通信进行 epoll 源码走读。 Linux 源码:Linux 5.7 版本。epoll 核心源码:eventpoll.h / eventpoll.c。 搭建 epoll 内核调试环境视频: ......
内核 源码 原理 epoll

树莓派-内核开发-说明 下载代码 编译 替换内核

一、概述 二、ubuntu里交叉编译 1、获取交叉编译工具和源码 2、配置编译环境变量 2.1 手动配置环境变量 2.2 自动配置环境变量 3、配置config 3.1 使用源码里自带的config 3.2 获取当前树莓派的config 4、编译 5、挂载树莓派sd卡,并安装编译出的DIRECTLY ......
内核 树莓 代码

zImage的位置对于ARM32内核解压的影响

分析了zImage和解压后内核在不同的相对位置关系下,解压过程中执行的操作,主要涉及到是否需要重定位zImage,何时创建页表,是否需要调整zImage拷贝的位置。 ......
内核 位置 zImage ARM 32

配置conda虚拟环境,在jupyter内核中使用

1.创建虚拟环境并激活进入 conda create -n '名称' source activate '名称' environment.yml name: ‘名称’ channels: - defaults dependencies: - python=3.6 - numpy - pandas - ......
内核 jupyter 环境 conda

ch2_ab1 Linux内核模块

准备事项: | 虚拟机 | 系统 | 文件传输工具 | | | : | | | VMware | CentOS | Winscp | | VitualBox | Ubuntu | Xftp | | | | | 有2*2*2种选择,我是Virtualbox+Ubuntu+Winscp - [x] 下载 ......
内核 模块 ch2_ab Linux ch2

ARM32内核解压流程

简要介绍了ARM32平台上,内核解压的流程。同时,根据代码修改历史,发表了对于当前代码实现背后逻辑的一些个人见解。 ......
内核 流程 ARM 32

内核升级

#内核升级 cd /data/yunli/rpms/system_rpm sudo yum install -y kernel-lt-4.4.248-1.el7.elrepo.x86_64 sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' / ......
内核

我的Linux网络之行2-初探内核网络

# 前言 在上一文中,初步了解了一些协议与相关的一些知识,至少已经有了一些概念,OK,那么下面就是我们对于开发的深入了。 # Linux以太网驱动架构 OSI 模型中将网络划分为七层,从下到上依次为:物理层(Physical)、数据链路层(Date Link)、网络层(Network)、传输层(Tr ......
网络 内核 Linux

8步轻松晋级AMD MPSoC Linux内核调试专家

8步轻松晋级AMD MPSoC Linux内核调试专家 ## 介绍 AMD MPSoC Linux一般使用PetaLinux编译Linux系统,包括Linux内核、DTS、文件系统。 PetaLinux内部集成Yocto,自动下载、配置、编译各种软件包。 它简化了编译流程,也导致有些工程师找不到软件 ......
内核 专家 MPSoC Linux AMD

16 Linux 内核定时器实验

一、Linux 时间管理和内核定时器简介 1. 内核时间管理简介 Linux 内核中有大量的函数需要时间管理,比如周期性的调度程序、延时程序、定时器等。 硬件定时器提供时钟源,时钟源的频率可以设置,设置好以后就周期性的产生定时中断,系统使用定时中断来计时。中断周期性产生的频率就是系统频率,也叫做节拍 ......
定时器 内核 Linux 16

基于Win32k内核提权漏洞的攻防对抗

Win32k组件最初的设计和编写是完全建立的用户层上的,但是微软在 Windows NT 4.0 的改变中将 Win32k.sys 作为改变的一部分而引入,用以提升图形绘制性能并减少 Windows 应用程序的内存需求。 ......
内核 漏洞 Win 32k 32

Linux 内核 ASoC DMA 引擎驱动程序

Linux 内核 ASoC 框架,在概念上将嵌入式音频系统拆分为多个可复用的组件驱动程序,包括 Codec 类驱动程序、平台类驱动程序和机器类驱动程序。在实现上,机器类驱动程序用 `struct snd_soc_card` 和 `struct snd_soc_dai_link` 结构描述,属于平台类 ......
内核 驱动程序 引擎 程序 Linux

openeuler linux内核4.19安装(centos 同理)

linux内核安装: 安装内核步骤 下载相应内核版本【我这里用的是linux-4.19.90.tar.gz】 下载网址:https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/ 解压缩到自定位置【我这里是/root/桌面/send/】 安装内核图像 ......
内核 openeuler centos linux 4.19

Linux 内核设备驱动程序的IO寄存器访问 (上)

Linux 内核提供了一套可缓存的设备 IO 寄存器访问机制,即 **regmap**。**regmap** 机制支持以统一的接口,访问多种不同类型的设备 IO 寄存器,如内存映射的设备 IO 寄存器,和需要通过 I2C、I3C、SPI、AC97 和 SLIMBUS 等总线访问的设备寄存器等。内存映 ......
寄存器 内核 驱动程序 程序 设备