• <div id="0yoao"><tr id="0yoao"></tr></div>
    <dl id="0yoao"></dl>
  • <sup id="0yoao"></sup>
    <div id="0yoao"><tr id="0yoao"></tr></div>
  • <div id="0yoao"><tr id="0yoao"></tr></div>
  • Debian8 内核升级实验

    作者:linuxer 发布于:2017-2-27 19:28 分类:Linux应用技巧

    一直以来,我都是在使用一台ThinkPad T450 + Debian 8的机器来研究内核,Debian 8上缺省的内核版本是3.16,为什么不把内核升级到4.4.6版本上呢?反正现在蜗窝主要分析的也是这个版本的内核?

    本文主要记录了整个升级过程,方便后续重复使用,哈哈,也许哪天要升级到8.8版本的内核呢,到时候可以把这份文档调出来轻松升级。

    阅读全文>>

    标签: 内核升级

    评论(0) 浏览(6833)

    Linux系统如何标识进程?

    作者:linuxer 发布于:2017-2-23 19:10 分类:进程管理

    其实两年前,本站已经有了一篇关于进程标识的文档,不过非常的简陋,而且代码是来自2.6内核。随着linux container、pid namespace等概念的引入,进程标识方面已经有了天翻地覆的变化,因此我们需要对这部分的内容进行重新整理。

    本文主要分成四个部分来描述进程标识这个主题:在初步介绍了一些入门的各种IDs基础知识后,在第三章我们描述了pid、pid number、pid namespace等基础的概念。第四章重点描述了内核如何将这些基本概念抽象成具体的数据结构,最后我们简单分析了内核关于进程标识的源代码(代码来自linux4.4.6版本)。

    阅读全文>>

    标签: 进程ID

    评论(3) 浏览(4690)

    ARM Linux?#31995;?#31995;统调用代码分析

    作者:linuxer 发布于:2017-2-20 18:54 分类:进程管理

    当用户空间的程序调用swi指令发起内核服务请求的时候,实际上程序其实是完成了一次“穿越”,该进程从用户态穿越到了内核态。这个过程有点象周末你在家里看片,突然有些内急,随手按下了pause按键,电影里面的世界嘎然而止了。程序世界亦然,一个swi后,用户空间的代码执行暂停了、stack(用户栈)?#31995;?#25968;据,正文段、静态数据区、heap去的数据……一切都停下来了,程序的执行突然就转入另外一个世界,使用的栈变成了内核栈、正在执行的正文段程序变成vector_swi开始的binary code、与之匹配数据区也变化了……

    一切是怎么发生的呢?CPU只有一套而已,这里?#24067;?#20570;了哪些动作?软件?#25351;?#20102;什么鬼?穿越到另外的世界当然有趣,但是如何找到回来的路?这一切疑问希望能在这样的一篇文档中讲述清楚。

    本文的代码来自4.4.6内核,用ARM处理器为例?#29992;?#36848;。

    阅读全文>>

    标签: ARM 系统调用

    评论(4) 浏览(6381)

    进程切换分析(2):TLB处理

    作者:linuxer 发布于:2017-2-9 12:05 分类:进程管理

    进程切换是一个复杂的过程,本文不?#24613;?#35814;细描述整个进程切换的方方面面,而是关注进程切换中一个小小的知识点:TLB的处理。为了能够讲清楚这个问题,我们在第二章描述在单CPU场景下一些和TLB相关的细节,第三章推进到多核场景,至此,理论部分结束。在第二章和第三章,我们从基本的逻辑?#23884;?#20986;发,并不拘泥于特定的CPU和特定的OS,这里需要大家对基本的TLB的组织原理有所了解,具体可以参考本站的《TLB操作》一文。再好的逻辑也需要体现在HW block和SW block的设计中,在第四章,我们给出了linux4.4.6内核在ARM64平台?#31995;腡LB代码处理细节(在描述tlb lazy mode的时候引入部分x86架构的代码),希望能通过具体的代码和实?#23454;腃PU?#24067;?#34892;为加深大家对原理的理解。

    阅读全文>>

    标签: TLB 进程切换

    评论(11) 浏览(7720)

    eMMC 原理 3 :分区管理

    作者:codingbelief 发布于:2017-2-6 21:31 分类:基础技术

    本文主要介绍 eMMC 内部的分区管理机制

    阅读全文>>

    标签: emmc

    评论(12) 浏览(14229)

    进程切换分析(1):基?#31350;?#26550;

    作者:linuxer 发布于:2017-2-4 18:43 分类:进程管理

    本文主要是以context_switch为起点,分析了整个进程切换过?#35752;?#30340;基本操作和基本的代码框架,很多细节,例如tlb的操作,cache的操作,锁的操作等等会在其他专门的文档中描述。进程切换包括体系结构相关的代码和系统结构无关的代码。第二、三、四分别描述了context_switch的代码脉络,后面的章节是以ARM64为例子,讲述了具体进程地址空间的切换过程和?#24067;?#19978;下文的切换过程。

    阅读全文>>

    标签: 进程切换 context_switch

    评论(14) 浏览(10422)

    Copyright @ 2013-2015 蜗窝科技 All rights reserved. Powered by emlog
    连码三全中是什么
  • <div id="0yoao"><tr id="0yoao"></tr></div>
    <dl id="0yoao"></dl>
  • <sup id="0yoao"></sup>
    <div id="0yoao"><tr id="0yoao"></tr></div>
  • <div id="0yoao"><tr id="0yoao"></tr></div>
  • <div id="0yoao"><tr id="0yoao"></tr></div>
    <dl id="0yoao"></dl>
  • <sup id="0yoao"></sup>
    <div id="0yoao"><tr id="0yoao"></tr></div>
  • <div id="0yoao"><tr id="0yoao"></tr></div>