• 读书笔记 深入理解安卓内核设计思想 ---Android启动过程

    时间:2024-04-05 20:53:25

     一,安卓设备启动三阶段   Bootloader   LinuxKernel 和Android系统服务·二,第一个系统进程init PID是0三,陆续启动其他关键性的服务进程 ServieManager Zygote SystemServer四,ServiceManager的启动crical选项说...

  • ZYNQ-Linux学习笔记(8)- Petalinux .2 编译移植Marvell8801wifi内核模块

    时间:2024-04-05 18:28:33

    前言petalinux2018.2用的内核版本是4.14.0marvell8801给的驱动所依赖的内核版本是3.10.11由于内核的API在这两个版本上是有区别的,所以需要修改,其次还需要修改makefile。目录结构sd8801的驱动目录如下D:\DOWNLOADS\SD-UAPSTA-8801-...

  • RTAI内核功能分析和关键技术

    时间:2024-04-05 16:46:37

    功能分析Linux 内核中灵活的模块化机制在 RTAI 中得到完美发挥。按照实现功能的不同,RTAI 将系统划分为多个不同的模块,比如:硬件抽象层模块、实时任务调度模块、管道机制模块、内存共享机制模块、邮箱机制模块和信号量机制模块等。接下来对 RTAI 的几个主要功能模块进行简单介绍。硬件抽象层模块...

  • 内核驱动 (四)时钟控制器 - clock management unit(CMU)

    时间:2024-04-05 14:53:21

    这一章节主要描述S5PV210的clock management unit(CMU),在S5PV210里面,系统控制器(SYSCON)管理CMU和PMU(power management unit 电源管理单元)。1.1时钟域S5PV210包含3个时钟域,即:MSYS(main system)、DS...

  • 如何在Linux应用层和内核层获取时间

    时间:2024-04-05 12:33:30

    【1】应用层gettimeofday函数头文件:#include <sys/time.h>int gettimeofday(struct timeval*tv, struct timezone *tz);其参数tv是保存获取时间结果的结构体,参数tz用于保存时区结果:struct tim...

  • linux内核库aio调研

    时间:2024-04-05 09:18:29

    linux内核库aio调研背景介绍两种头文件:5 个系统调用:(man手册)echo > /proc/sys/fs/aio-max-nr 1048576背景介绍图 1. 基本 Linux I/O 模型的简单矩阵两种头文件:原生的AIO_ABI方法 /usr/include/linux/aio_...

  • 自己动手编写FreeBSD内核防火墙模块

    时间:2024-04-05 08:44:58

    1. 概述ipfw是BSD系统中重要的防火墙和通信控制工具,防火墙和NAT都可以通过ipfw的相关指令来实现。pf (包过滤Packet Filter) 是FreeBSD 系统上进行TCP/IP流量过滤和网络地址转换的软件系统。 PF 同样也能提供TCP/IP流量的整形和控制,并且提供带宽控制和数据...

  • accept系统调用内核实现

    时间:2024-04-04 22:20:01

    用户态对accept的标准使用方法:if ((client_fd = accept(sockfd, (struct sockaddr *)&remote_addr, &sin_size)) == -1) { //accept()函数让server接收客户的连接请求 perr...

  • 【网络教程】软路由固件中的AdGuardHome无法下载内核文件的解决办法!

    时间:2024-04-04 16:48:24

    文章目录问题描述解决方案问题描述有一些软路由固件安装了AdGuardHome功能,但是很多情况下我们在启动/更新内核的时候提示失败,从而导致不能使用,如图:解决方案通过SSH的方式连接路由器,工具可以使用putty,我这里使用的是cmder登入帐号是root,密码就是您的后台登入密码登入之后,直接复...

  • Ubuntu设置默认内核启动版本

    时间:2024-04-04 16:12:06

    最近做实验要一直使用4.15.0的内核,但是系统自动给更新了内核版本,所以准备通过设置grub的方式设置默认启动内核。首先我先查看了电脑中的所有内核版本,如下:我想启动4.15.0版本的内核。1、打开配置文件vi /etc/default/grub2、修改配置将 GRUB_DEFAULT=0 修改为...

  • 如何将自己写的驱动编译进linux内核镜像中

    时间:2024-04-04 15:46:31

        大家在做驱动开发时,通常都是将驱动源码编译为.ok文件,然后通过insmod 加载进系统中,那么如何能够实现在编译linux内核源码时,同时将驱动源码一同编译进镜像中呢?下面给出具体的方法和步骤1,在Linux内核源码的drivers目录下创建自己的驱动源码目录,这里我同时加入两个驱动,分别...

  • Ubuntu 16.04/18.04 LTS内核降级及通过GURB指定内核

    时间:2024-04-04 11:33:12

    列出当前安装的所有LINUX内核 dpkg -l|grep linux-image 安装4.4.0-47内核 sudo apt-get install linux-image-4.4.0-47-generic linux-image-extra-4.4.0-47-generic 删除4.4.0-...

  • 解决ubuntu16.04升级内核后耳机没声音的问题

    时间:2024-04-03 07:20:25

    自从给ubuntu1604内核升级到4.10后,发现耳机一直听不到任何声音, what a pity...出了问题总是要解决的:首先,安装alsa软件检测声卡驱动是否正常:sudo apt install alsa-utilsalsamixerOK, 正确检测到声卡。既然声卡没问题就要看看输入输出设...

  • UDP协议-UDP内核实现(了解)

    时间:2024-04-02 15:58:20

    Linux系统是用C语言写的,udp结构定义: typedef struct udp_header{uint32_t _src_port : 16;uint32_t _dst_port : 16;uint32_t _length : 16;uint32_t _check_code : 16;}ud...

  • Raspberry Pi 内核编译

    时间:2024-04-02 10:34:51

    本例使用(Raspberry Pi Zero-w)一、树莓派系统安装1.1 准备工作(1)硬件准备:Raspberry Pi Zero W(以下简称RPI),RPI电源线,SD卡,SD卡读卡器,笔记本电脑,无线路由器(电脑和RPI处于同一wifi网络下即可)。(2)软件准备:Raspbrain系统镜...

  • 不同的内核源码编译出来的ko文件,区别到底是什么?

    时间:2024-04-02 09:23:42

    之前一直在考虑,不同的内核源码编译出来的ko文件,区别到底是什么?能不能不编译内核加载内核模块呢?最近逆向分析了linux内核ko模块的结构,事实证明,是可以的。我在这里给大家分享一些我的心得。 首先分析一个最简单的hello.ko,Makefile就不写了,因为需要尽可能简单,加一行去除调试信息的...

  • 树莓派3b——linux内核更新

    时间:2024-04-01 15:15:32

    树莓派3b——linux内核更新闲来无事,试水写个博客,各位大神看看就好也希望能帮助到别人呗由于学习驱动编译需要,驱动模块所依赖的系统版本必须跟内核相同,然后更换内核得把驱动更新一遍所以,现在先编译一遍树莓派的内核吧平台版本ubuntu16.04、树莓派3b、4.4.21内核的jessie系统、4....

  • ZYNQ7000(AX7020)移植Linux操作系统(三):内核的编译

    时间:2024-04-01 10:06:02

    一、Linux内核介绍Linux是一个自由的、免费的,源码开放的操作系统。一些厂商将Linux系统内核与应用程序个文档包装起来,并提供一些安装界面和系统设定管理工具的一个软件包的集合,例如RedHat,Debian、Ubuntu、Novell/SuSE等。Ubuntu版本号由该次发布的年份和月份组成...

  • Centos7编译并打包内核(非本机编译)

    时间:2024-04-01 10:05:11

    一、背景现需要通过自己编译内核来实现某些特性,来替换服务器端Centos7的内核,但是服务器剩余磁盘空间不足(编译内核需要至少14G空闲磁盘空间),只能使用其他机器(也是Centos7)来进行编译工作,再移植编译好的内核到服务器。二、准备内核源码 (https://www.kernel.org/,选...

  • Linux 内核工具 iptables 配置TCP/UDP端口转发(命令参考)

    时间:2024-03-31 15:31:14

    1、配置TCP端口转发 把本机20000/TCP端口转发到7.7.7.7:20000 iptables -t nat -A PREROUTING -p tcp --dport 20000 -j DNAT --to-destination 7.7.7.7:20000 iptables -t nat -...