一、前言 本文主要是以context_switch为起点,分析了整个进程切换过程中的基本操作和基本的代码框架,很多细节,例如tlb的操作,cache的操作,锁的操作等等会在其他专门的文档中描述。进程切换包括体系结构相关的代码和系统结构无关的代码。第二、三、四分别描述了context_switch的代 ...
分类:
系统相关 时间:
2018-02-13 23:37:50
阅读次数:
290
一、前言 本文没有什么框架性的东西,就是按照__create_page_tables代码的执行路径走读一遍,记录在初始化阶段,内核是如何创建内核运行需要的页表过程。想要了解一些概述性的、框架性的东西可以参考内存初始化文档。 本文的代码来自ARM64,内核版本是4.4.6,此外,阅读本文最好熟悉ARM ...
分类:
移动开发 时间:
2018-02-13 23:37:44
阅读次数:
274
1、在database/factories/UserFactory.php 中添加 2、在tinker中生成数据 3、数据生成成功 ...
分类:
其他好文 时间:
2018-02-13 23:37:35
阅读次数:
213
package Chapter6.ShiLi; public class Dog { public String Name; public String Type; // 带参构造函数 public Dog(String name, String type) { this.Name = name; ...
分类:
其他好文 时间:
2018-02-13 23:37:25
阅读次数:
194
一、前言 进程切换是一个复杂的过程,本文不准备详细描述整个进程切换的方方面面,而是关注进程切换中一个小小的知识点:TLB的处理。为了能够讲清楚这个问题,我们在第二章描述在单CPU场景下一些和TLB相关的细节,第三章推进到多核场景,至此,理论部分结束。在第二章和第三章,我们从基本的逻辑角度出发,并不拘 ...
分类:
系统相关 时间:
2018-02-13 23:37:18
阅读次数:
545
一、前言 一直以来,我都非常着迷于两种电影拍摄手法:一种是慢镜头,将每一个细节全方位的展现给观众。另外一种就是快镜头,多半是反应一个时代的变迁,从非常长的时间段中,截取几个典型的snapshot,合成在十几秒的镜头中,可以让观众很快的了解一个事物的发展脉络。对应到技术层面,慢镜头有点类似情景分析,把 ...
分类:
系统相关 时间:
2018-02-13 23:37:09
阅读次数:
284
题目大意: 类似a+b*(c-d)-e/f 基本思路: 递归建立表达式树,优先级高的在深层次,注意括号,注意结合性,左结合就找优先级相同的当中在最右边的; 代码如下: ...
分类:
其他好文 时间:
2018-02-13 23:36:59
阅读次数:
218
一、前言 本文主要描述了主调度器(schedule函数)中的同步处理。 二、进程调度简介 进程切换有两种,一种是当进程由于需要等待某种资源而无法继续执行下去,这时候只能是主动将自己挂起(调用schedule函数),引发一次任务调度过程。另外一种是进程被抢占。所谓抢占(preempt)就是在当前进程欢 ...
分类:
系统相关 时间:
2018-02-13 23:36:46
阅读次数:
223
一、前言 数学大师陈省身有一句话是这样说的:了解历史的变化是了解这门学科的一个步骤。今天,我把这句话应用到一个具体的Linux模块:了解逆向映射的最好的方法是了解它的历史。本文介绍了Linux内核中的逆向映射机制如何从无到有,如何从笨重到轻盈的历史过程,通过这些历史的演进过程,希望能对逆向映射有更加 ...
分类:
其他好文 时间:
2018-02-13 23:36:38
阅读次数:
207
一、前言 Linux VM subsystem在很多场合都需要对TLB进行flush操作,本文希望能够把这个知识点相关的方方面面描述清楚。第二章描述了一些TLB的基本概念,第三章描述了ARM64中TLB的具体硬件实现,第四章描述了linux中和TLB flush相关的软件接口。内核版本依然是4.4. ...
分类:
其他好文 时间:
2018-02-13 23:36:31
阅读次数:
216
移动工具快捷键:V 属性: 自动选择 在默认情况下,移动工具的“自动选择”一项是没有勾选的。表示只能选中图层窗口中选定的固定图层,不能随意的点击选择别的图层。在这里,我们也勾选“自动选择”,可任意选择图层。 显示变换控件 ctrl+T 如图所示,可自动出现图层边缘定界框,一般默认不勾选; 选区工具: ...
分类:
移动开发 时间:
2018-02-13 23:36:21
阅读次数:
258
一、前言 时钟或者钟表(clock)是一种计时工具,每个人都至少有一块,可能在你的手机里,也可能佩戴在你的手腕上。如果Linux也是一个普通人的话,那么她的手腕上应该有十几块手表,包括:CLOCK_REALTIME、CLOCK_MONOTONIC、CLOCK_PROCESS_CPUTIME_ID、C ...
分类:
系统相关 时间:
2018-02-13 23:36:12
阅读次数:
255
一、JSON 1.什么是JSON JSON是一种数据格式,类似于PHP中的关联数组,数据时以key和value成对出现的。 2.适用环境和作用 JSON可以在js中直接使用,适用于不同语言环境的数据传输, 3.定义和取值 JSON定义方法, var js ={"one":"hello","tow": ...
分类:
Web程序 时间:
2018-02-13 23:36:05
阅读次数:
206
-------------------------------------------------------------------------- ...
分类:
其他好文 时间:
2018-02-13 23:35:58
阅读次数:
168
看《神盾局第四季》哭成狗,AI对人类感情的渴望让我也对自己的感情产生了怀疑,人生总是要做出选择,到底哪边才是真正的自己,我很矛盾,去追求梦想,还是留下来陪家人,确实是一个难以抉择的矛盾。一方面说服自己出去,另一方面看着父母渐渐老去,又舍不得他们,我怕我会后悔自己的决定。想想Mack为了虚拟的女儿而放 ...
分类:
其他好文 时间:
2018-02-13 23:35:51
阅读次数:
183
题目描述 Description 求两个数A和B的最大公约数。 1<=A,B<=2^31-1 题目描述 Description 求两个数A和B的最大公约数。 1<=A,B<=2^31-1 求两个数A和B的最大公约数。 1<=A,B<=2^31-1 输入描述 Input Description 两个整 ...
分类:
其他好文 时间:
2018-02-13 23:35:41
阅读次数:
197