Quantcast
Channel: 读书笔记 – JasonLe's TechBlog
Browsing all 12 articles
Browse latest View live

Kernel中定时器与时间管理

linux kernel时钟就是系统定时器以某种频率自行触发,当时钟中断发生时,内核就通过一种特殊的中断处理程序对其进行处理。 利用时钟中断做的事情: 更新系统运行时间 update_wall_time(ticks) 更新实际时间 在SMP系统上,均衡调度各处理器上的运行队列 检查自己时间片是否用尽,耗尽的花,就是用schedule()调度 更新资源消耗负载,比如top右上方统计值...

View Article



Linux系统调用(读书笔记)

1.linux内核中设置了用于实现系统功能的子程序,称为系统调用。系统调用和普通库函数调用非常相似,例如function(),只是系统调用由操作系统核心提供,运行于核心态例如sys_function(),而普通的函数调用由函数库或用户自己提供,运行于用户态。 2.系统调用号:...

View Article

Image may be NSFW.
Clik here to view.

编写Linux中断处理程序(上半部)(读书笔记)

今天看了Linux中断处理的前半部分。中断,本质上是一种特殊的电信号。...

View Article

中断下半部分(读书笔记)

中断处理分为两个部分:上半部和下半部。中断处理程序属于上半部. 下半部的任务就是执行与中断处理程序密切相关但中断处理程序本身不执行,推后执行的工作。 对于一个工作是放在上半部还是放在下半部去执行,可以参考下面四条: 1)如果一个任务对时间非常敏感,将其放在中断处理程序中执行。 2)如果一个任务和硬件相关,将其放在中断处理程序中执行。...

View Article

Image may be NSFW.
Clik here to view.

异常控制流(读书笔记)

今天阅读了一下计算机对于异常处理的章节,我把一些有用的摘出来,方便以后回顾。 异常控制除了中断,还包括system call,我会一直向这篇文章中添加自己读书内容的。 异常表:当处理器检测到有事件发生时,它会通过跳转表,进行一个间接过程调用(异常),到异常处理程序。 异常号:系统中可能的某种类型的异常都分配了一个唯一的非负整数的异常号。异常号是到异常表中的索引。...

View Article


数据挖掘—–自己整理的笔记

将近一个月没有更新博客,主要这期间有太多的考试,数据挖掘就是其中的一门比较难的课程,由于一直不敢怎么掉以轻心,总结了好长的笔记来复习。其实在读研期间也曾考虑学习Data Mining方向,虽说不是很擅长,但是通过这门课也算是data mining入了门。...

View Article

Image may be NSFW.
Clik here to view.

OS的分页分段(笔记)

我们从80386处理器入手。首先,到了80386时代,CPU有了四种运行模式,即实模式、保护模式、虚拟8086模式和SMM模式。 实模式其大致包括实模式1MB的线性地址空间、内存寻址方法、寄存器、端口读写以及中断处理方法等内容。到了80386时代,引进了一种沿用至今的CPU运行机制——保护模式(Protected...

View Article

Image may be NSFW.
Clik here to view.

Linux进程的虚拟地址空间(笔记)

进程虚拟空间是个32或64位的“平坦”(独立的连续区间)地址空间(空间的具体大小取决于体系结构)。 为了方便管理,虚拟空间被划分为许多大小可变的(但必须是4096的倍数)内存区域,如果要查看某个进程占用的内存区域,可以使用命令cat /proc/<pid>/maps获得.pid是进程的id号 [root@localhost user-mode]# cat /proc/16677/maps...

View Article


Image may be NSFW.
Clik here to view.

内存条物理结构分析

Update 2015-07-04 我们经常接触物理内存条,如下有一根DDR的内存条,我们可以看到这个内存条上面有8个黑色的内存颗粒,在高端服务器上面通常会带有ECC校验,所以会存在9个黑色的内存颗粒,其中一个的内存颗粒是专门做ECC校验的。 从概念的层次结构上面分为:Channel > DIMM > Rank > Chip > Bank > Row/Column...

View Article


内核页表和进程页表

最近在看vmalloc()分配代码,我们知道当通过alloc_page()分配出来page后,需要将这些分散的物理页框page映射到vmalloc区,这里我们就要修改内核页表,以前我学页表是把内核空间与用户空间割裂学习的,导致二者无法很好地衔接,这里我会把两个概念重新解释清楚。 下面代码映射到vmalloc区的关键就是map_vm_area()函数, for (i = 0; i <...

View Article

《MySQL实战45讲》学习笔记 1~15讲

01 | 基础架构:一条SQL查询语句是如何执行的? MySQL分为Server层和存储引擎层两部分。 连接器:负责跟客户端建立连接、获取权限、维持和管理连接。 查询缓存:查询请求先访问缓存(key 是查询的语句,value 是查询的结果)。命中直接返回。不推荐使用缓存,更新会把缓存清除(关闭缓存:参数 query_cache_type 设置成 DEMAND)。 分析器:对 SQL...

View Article

如何实现从执行到管理的角色转变?

成为管理者意味着成为领导——建立更大的团队,应对更大的挑战,承担更大的风险和责任。但无论如何,想要成为管理者就必须达到管理者应有的水平。关键是能够提升自己。 有的管理者因为本身业务能力强,在下属遇到困难时,会认为花时间教下属解决问题,远不如自己来做效率高。如果你也有这样的想法,就说明你现在还是处于「执行者」的状态,没有转化为管理者的思维方式。...

View Article
Browsing all 12 articles
Browse latest View live




Latest Images