因为是初次系统的学习Linux内核,过程中遇到了一些常常出现的名词。似曾相识,但对他们的含义又不是非常清楚。因此,将搜索到的内容进行一下汇总。 1.vmlinux vmlinux是一个包括linux kernel的静态链接的可运行文件。文件类型是linux接受的可运行文件格式之中的一个(ELF、CO ...
分类:
系统相关 时间:
2018-11-13 15:19:47
阅读次数:
217
mov 几个重要指令pushl, popl, call, ret cs寄存器: 代码段寄存器 cs:rip 总是指向下一条指令地址 函数调用关系 分析case ...
分类:
系统相关 时间:
2018-11-09 16:08:40
阅读次数:
189
一.背景 1.1 移植linux-4.14内核的过程中,此时使用的是ext4文件系统,并且将根文件系统存储在sd卡的第一个分区上 1.2 内核打印完Waiting for root device /dev/mmcblk0p1...这一句信息之后并没有panic,而且串口还可以回应 二.分析 既然处在 ...
分类:
系统相关 时间:
2018-11-05 12:53:51
阅读次数:
695
什么是epollepoll是什么?按照man手册的说法:是为处理大批量句柄而作了改进的poll。当然,这不是2.6内核才有的,它是在2.5.44内核中被引进的(epoll(4) is a new API introduced in Linux kernel 2.5.44),它几乎具备了之前所说的一切 ...
分类:
其他好文 时间:
2018-11-03 15:29:06
阅读次数:
187
整理一些杂乱的内容。以下x86架构。 Linux 内核栈大小 内核栈大小是固定的,默认为8k,曾经有选项可以设置为4k栈。由于大小固定,申请过大的栈内存,或者函数调用层次过深,都可能导致栈溢出。 关注默认4k还是8k栈,社区曾有过长时间讨论。 其中8k栈的缺点如下: 浪费内存。 由于内核4k分页,要 ...
分类:
系统相关 时间:
2018-10-28 00:48:31
阅读次数:
547
Linux内核基础:Linux Kernel: Linux内核的体积结构是单内核的,但充分借鉴了微内核设计体系的优点,为内核引入模块化机制,使得虽然是单内核,但工作在模块化的方式下,并且模块可以动态装载或卸载;Linux内核负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳 ...
分类:
系统相关 时间:
2018-10-27 00:15:51
阅读次数:
207
尽管Android基于Linux Kernel,但在进程管理上,却采取了另外一种独特的设计:当进程活动停止时,系统并不会立刻结束它,而是会尽可能地将该进程保存在内存中,在以后的某个时间,一旦需要该进程,系统就会立即进入该进程,而无需再初始化。Android根据重要程度将应用进程划分为5个等级,并依次... ...
分类:
移动开发 时间:
2018-10-24 22:25:28
阅读次数:
204
kmalloc flags: Memory zones The Linux kernel knows about a minimum of three memory zones: DMA capable memory,normal memory,and high memory. ZONE_DMA:是 ...
分类:
系统相关 时间:
2018-10-24 01:14:36
阅读次数:
161
Please install the Linux kernel "header" files matching the current kernel 当我启动minilkube时遇到如下错误消息: Minikube setup with driver virtualbox Starting loca ...
分类:
系统相关 时间:
2018-10-20 16:21:24
阅读次数:
439
目录: 1、Android系统架构 2、Android类库 3、四大组件 1、Android系统架构 从架构图看出架构分为五个部分,由下往上依次为: Linux Kernel:Android基于Linux提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。Linux Kernel也 ...
分类:
移动开发 时间:
2018-10-15 20:49:41
阅读次数:
215