Linux Kernel 是操作系统 Linux 中最核心的一个部分,它是系统的管理者,负责管理计算机的硬件资源,为用户程序提供必要的服务和支持。它是整个 Linux 操作系统的核心,控制着所有的软件和硬件资源,以保证系统的正常运行。Linux Kernel 提供了访问硬件资源的接口,使应用程序可以和硬件交互,同时也提供了各种系统调用来满足用户需求。
Linux Kernel 的作用主要包括以下
原创
2024-04-30 11:22:37
97阅读
高版本(7.0以上)的系统基本不用考虑,貌似Android已经改进了成高压缩比的。期间借用了不少网络资源,在此表示感谢。因为Android设备的参差不齐,系统API在图片压缩的实现时,为考虑兼容低性能设备,放弃使用了huffman编码对对图片进行压缩,代而取之使用skia引擎。以前深入看了些里边的东西,没有实际使用也就没有深究了,如果需要网络收集大量图片,并存放于个人PC,拟来实现以下这个东西。l
< 嵌入式linux应用完全开发手册 > 韦东山 内核Makefile的使命: 编译哪些内核文件? 读取各级子目录makefile, .config, auto.conf, Kbuild, 决定编译那些模块哪些代码. 指定哪些文件将被编译: 根据选配方案决定编译哪些模块 怎样编译内核文件? 编译工具
原创
2022-01-12 16:03:54
119阅读
内存屏障主要解决的问题是编译器的优化和CPU的乱序执行。编译器在优化的时候,生成的汇编指令可能和c语言程序的执行顺序不一样,在需要程序严格按照c语言顺序执行时,需要显式的告诉编译不需要优化,这在linux下是通过barrier()宏完成的,它依靠volidate关键字和memory关键字,前者告诉编译barrier()周围的指令不要被优化,后者作用是告诉编译器汇编代码会使内存里面的值更改,编译器应使用内存里的新值而非寄存器里保存的老值。同样,CPU执行会通过乱序以提高性能。汇编里的指令不一定是按照我们看到的顺序执行的。linux中通过mb()系列宏来保证执行的顺序。具体做法是通过mfence/
转载
2012-11-28 17:15:00
421阅读
2评论
1. 在《Linux内核设计与实现3》(Linux Kernel Development 3)中写道:】
转载
2012-05-28 16:59:00
74阅读
2评论
make modules_install --> make install --> update-grub 这一系列步骤,后来我发现了Debian、Ubuntu机器上可以使用kernel-package这番神器来编译安装内核。
kernel-package是Debian提供的一个编译Linux内核的一个工具集,安装kernel-package 会同时安装上build-es
转载
2023-09-07 15:52:33
153阅读
目前SK已支持OpenAI,Azure OpenAI,Gemini,HuggingFace,MistralAI等LLM,相信之后会越来越丰富。 首先要引入所对应的LLM包,具体项目文件如下:<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputTy
目前SK已支持OpenAI,Azure OpenAI,Gemini,HuggingFace,MistralAI等LLM,相信之后会越来越丰富。 首先要引入所对应的LLM包,具体项目文件如下:<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputTy
spyder虽然平时在本地用起来很方便,但是偶尔还是想使用远程运行远程linux服务器上的代码和环境 1.需要在远程的服务端启动spyder服务启动spyder核root@AI# python -m spyder_kernels.console
NOTE: When using the `ipython kernel` entry point, Ctrl-C will not work.
转载
2023-06-29 15:24:19
358阅读
问一:编译出来的Linux内核镜像(".\build\arch\arm64\boot\Image"),可以单独运行吗?答案是能,但是加载完就提示panic,然后死掉了。原因是: 内核代码加载完后,一定要切换到低权限模式运行, 内核是设计来为 运行于低CPU权限的 "userSpace app" 服务的。 内核切换到低权限模式去运行的方式,就是去运行一个普通程序——用户态的可执
转载
2023-10-01 17:33:04
215阅读
内核编译
编译前一定要注意把selinux关闭,和根分区要有足够的空间
为什么重新编译内核
新的内核修订了旧内核的bug,并增加了许多新的特性。如果用户想要使用这些新特性,或想根据自己的系统度身定制一个更高效,更稳定的内核,就需要重新编译内核。通常,更新的内
原创
2009-11-05 08:30:18
562阅读
一、对于休眠(suspend)的简单介绍 在Linux中,休眠主要分三个主要的步骤: 1) 冻结用户态进程和内核态任务 2) 调用注册的设备的suspend的回调函数, 顺序是按照注册顺序 3) 休眠核心设备和使CPU进入休眠态, &
转载
2024-03-01 20:17:07
96阅读
liunx guidelinux interfaceapplication interfacesystem call interfacelibrary function interfacelinux componentbootloader引导程序(Bootloader):引导程序是管理计算机启动过程的软件,对于大多数用户而言,只是弹出一个屏幕,但其实内部操作系统做了很多事情kernel内核(Ker
转载
2023-10-27 02:23:27
116阅读
######################正常编译步骤:make mrpropermake cleancp /usr/src/linux-version/.config .configcp /boot/config-`uname -r` .oldconfigmake menuconfigmake bzImagemake modulesmake modules_insta
kernel.shmmax = 2147483648//
该参数定义了共享内存段的最大尺寸(以字节为单位)。其值应>=sag_max_size初始化参数的大小,否则SAG由多个内存段构成,效率降低,还要不小于物理内存的一半,默认情况下在32位x86系统中,Oracle
SGA最大不能超过1.7GB.缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2Gkern
原创
2014-07-23 14:03:41
10000+阅读
ernel-debugging-with-proc-qsequenceq-files-part-2-of-3This week, we'll pick up where we left off last w
转载
2014-04-05 13:45:00
118阅读
2评论
http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-1.4274/Now that we understand th...
转载
2022-05-02 21:15:23
303阅读
本文基于Android 12介绍Linux Kernel层和init进程的启动过程。一、Android启动过程概述Android正常模式启动过程如下图所示:启动电源:当按下电源键时,引用芯片从预定义的地方开始执行,加载引导程序BootLoader到RAM,开始执行。BootLoader:它是在操作系统内核运行之前运行的一段小程序,初始化硬件设备、建立内存空间映射图,从而将OS拉起来。Linux K
转载
2023-12-16 07:34:08
148阅读
开机画面顶端出现 kernel is not seandroid enforcing 怎么解决以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!开机画面顶端出现 kernel is not seandroid enforcing 怎么解决那是因为你刷了4.3的bootloader,三星4.3开始更新bootloader,对
转载
2023-10-18 13:41:21
282阅读
一、总体框架 先上一张google提供官方的Android框架图: Android系统架构由5部分组成,分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications(E文不好就不翻译了,其实这也是简单的计算机E文啦)下面分别讲述每部分的主要作用:1、Linux Kernel Android基于Lin
转载
2023-10-01 10:04:59
364阅读