
Linux
Big chris
782783515@qq.com
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[Linux][K]memory init flow
内存大小内存dts解析memory@40000000 { device_type = "memory"; reg = <0 0x40000000 0 0x1e800000>; };解析代码流程,最后将base addr与size添加到memblock中start_kernel setup_arch setup_machine_fdt early_init_dt_scan early_init_dt原创 2021-03-20 01:19:14 · 599 阅读 · 0 评论 -
[Linux][K]IRQ代码阅读记录
exp: intc: interrupt-controller@9bc0000 { compatible = "qcom,msm8996-gic-v3", "arm,gic-v3"; #interrupt-cells = <3>; interrupt-controller; #redistributor-regions = <1>; redistributor-stride = <0x0 0x40000>; reg = <0x原创 2021-03-20 01:07:41 · 455 阅读 · 1 评论 -
[Linux][Power]RuntimePM功能
Runtime PM背景介绍:每个设备(包括CPU)都处理好自身的电源管理工作,尽量以最低的能耗完成交代的任务,尽量在不需要工作的时候进入低功耗状态,尽量不和其它模块有过多耦合。每个设备都是最节省的话,整个系统一定是最节省的。RPM的核心机制:1)为每个设备维护一个引用计数(device->power.usage_count),用于指示该设备的使用状态。2)需要使用设备时,device driver调用pm_runtime_get(或pm_runtime_get_sync)接口,增加引用计数原创 2021-03-20 00:53:58 · 1735 阅读 · 0 评论 -
[Linux][Power] SMP Bootcpu代码阅读记录
online 可以被调度的active 可以被迁移的present 内核已接管的possible 系统存在的CPU,但没有被内核接管cpu_down \->_cpu_down(cpu, 0) \->take_cpu_down \->__cpu_disable() \->mp_ops->cpu_disable() \->...原创 2019-08-14 17:21:46 · 1514 阅读 · 0 评论 -
[Linux][Power]cpu_down代码阅读记录
Base linux5.0CPU-up CPU-down BP AP BP AP OFFLINE OFFLINE | ^ v ...原创 2019-08-14 17:20:32 · 2012 阅读 · 2 评论 -
[Linux][Power] suspend代码阅读记录
Base Linux RC5.0echo mem > /sys/power/stateSuspend Resume | | call notifiers Turn On Power | | ...原创 2019-08-14 17:17:42 · 843 阅读 · 0 评论 -
[Linux] [API]Kmalloc代码阅读记录
Kmalloc代码阅读记录Base Linux RC5.0SLOB SLAB SLUBstatic __always_inline void *kmalloc(size_t size, gfp_t flags){ if (__builtin_constant_p(size)) {#ifndef CONFIG_SLOB unsigned int index;#endif if ...原创 2019-08-14 17:14:37 · 485 阅读 · 0 评论 -
[Linux][API]中断下半部区别
linux kernel已经把中断处理分成了top half和bottom half,看起来已经不错了,那为何还要提供softirq、tasklet和workqueue这些bottom half机制workqueue和softirq、tasklet有本质的区别:workqueue运行在process contextsoftirq和tasklet运行在interrupt contexttas...原创 2019-07-24 13:18:59 · 341 阅读 · 0 评论 -
[Linux][Power] Thermal Power allocator governor 分析
Power allocator governor 分析PID控制算法原理图 k_d |current_temp | | ...原创 2018-11-26 17:18:50 · 1560 阅读 · 0 评论 -
[Linux][Powerl]pm autosleep flow
本文基于liunx4.9 code画的基本流程图,详细概述后续再添加。原创 2016-11-15 21:06:39 · 891 阅读 · 0 评论 -
[Linux][Power]CFS调度策略
CFS调度策略概述CFS(完全公平调度器)是从内核2.6.23版本开始采用的进程调度器。基本原理:设定一个调度周期(sched_latency_ns),目标是让每个进程在这个周期内至少有机会运行一次。也就是每个进程等待cpu的时间最长不超过这个调度周期;然后根据进程的数量,平分这个调度周期内cpu的使用权,由于进程的优先级与nice值不同,分割的时候需要加权,每个进程的累积运行时间保存在自己的vru原创 2017-06-16 10:49:28 · 2290 阅读 · 0 评论 -
[Ccode]cpu little big endian 判断
union 的成员本身就被存放在相同的内存空间(共享内存,正是union 发挥作用、做贡献的去处),因此,我们可以将一个CHAR/BYTE 数据和一个整型数据同时作为一个union 的成员,得出如下答案:int checkCPU(){ { union w { int a; char b; } c; c.a = 1; return (c.b原创 2017-03-23 13:50:51 · 897 阅读 · 0 评论 -
[网络]Ubuntu设置固定ip
Ubuntu设置固定ip上网步骤:注:对Ubuntu12.04重启后DNS重置无法联网也有效 1、手动设置固定ip $ sudo vi /etc/network/interfaces —在最后添加auto eth0 iface eth0 inet static address 192.168.1.5 netmask 255.255.255.0 gateway 192.168.1.1:w原创 2016-11-05 23:19:02 · 533 阅读 · 0 评论