LXR | KVM | PM | Time | Interrupt | Systems Performance | Bootup Optimization

上一页 1 ··· 7 8 9 10 11 12 下一页

2017年6月25日

Linux时间子系统之六:高精度定时器(HRTIMER)的原理和实现

摘要: 专题文档汇总目录 Notes: 原文地址:Linux时间子系统之六:高精度定时器(HRTIMER)的原理和实现 上一篇文章,我介绍了传统的低分辨率定时器的实现原理。而随着内核的不断演进,大牛们已经对这种低分辨率定时器的精度不再满足,而且,硬件也在不断地发展,系统中的定时器硬件的精度也越来越高,这也给 阅读全文

posted @ 2017-06-25 22:18 ArnoldLu 阅读(5628) 评论(1) 推荐(0)

Linux时间子系统之四:定时器的引擎:clock_event_device

摘要: 早期的内核版本中,进程的调度基于一个称之为tick的时钟滴答,通常使用时钟中断来定时地产生tick信号,每次tick定时中断都会进行进程的统计和调度,并对tick进行计数,记录在一个jiffies变量中,定时器的设计也是基于jiffies。这时候的内核代码中,几乎所有关于时钟的操作都是在machin 阅读全文

posted @ 2017-06-25 22:17 ArnoldLu 阅读(1701) 评论(0) 推荐(0)

Linux时间子系统之五:低分辨率定时器的原理和实现

摘要: 专题文档汇总目录 Notes:低精度timer在内核中的数据结构以及API接口;低精度timer精巧高效的分组,使用cascade进行定时器移位,组内Timer FIFO;低精度Timer的初始化流程。 原文地址:Linux时间子系统之五:低分辨率定时器的原理和实现 利用定时器,我们可以设定在未来的 阅读全文

posted @ 2017-06-25 22:17 ArnoldLu 阅读(2293) 评论(0) 推荐(1)

Linux时间子系统之三:时间的维护者:timekeeper

摘要: 专题文档汇总目录 Notes: 原文地址:Linux时间子系统之三:时间的维护者:timekeeper 本系列文章的前两节讨论了用于计时的时钟源:clocksource,以及内核内部时间的一些表示方法,但是对于真实的用户来说,我们感知的是真实世界的真实时间,也就是所谓的墙上时间,clocksourc 阅读全文

posted @ 2017-06-25 22:16 ArnoldLu 阅读(3242) 评论(0) 推荐(0)

Linux时间子系统之二:表示时间的单位和结构

摘要: 人们习惯用于表示时间的方法是:年、月、日、时、分、秒、毫秒、星期等等,但是在内核中,为了软件逻辑和代码的方便性,它使用了一些不同的时间表示方法,并为这些表示方法定义了相应的变量和数据结构,本节的内容就是阐述这些表示方法的意义和区别。 /******************************** 阅读全文

posted @ 2017-06-25 22:15 ArnoldLu 阅读(1894) 评论(0) 推荐(0)

Linux时间子系统之一:clock source(时钟源)

摘要: clock source用于为Linux内核提供一个时间基线,如果你用linux的date命令获取当前时间,内核会读取当前的clock source,转换并返回合适的时间单位给用户空间。在硬件层,它通常实现为一个由固定时钟频率驱动的计数器,计数器只能单调地增加,直到溢出为止。时钟源是内核计时的基础, 阅读全文

posted @ 2017-06-25 22:13 ArnoldLu 阅读(3446) 评论(0) 推荐(1)

Linux时间子系统之(十七):ARM generic timer驱动代码分析

摘要: 专题文档汇总目录 Notes:ARM平台Clock/Timer架构;System counter、Timer以及两者之间关系;Per cpu timer通过CP15访问,System counter通过memory mapped IO访问;将System counter和Per cpu timer分 阅读全文

posted @ 2017-06-25 22:11 ArnoldLu 阅读(10233) 评论(0) 推荐(0)

Linux时间子系统之(十六):clockevent

摘要: 专题文档汇总目录 Notes:介绍struct clocke_event_device及其功能feature、模式;触发event接口clockevents_program_event;clockevent注册接口;clockevent的sysfs接口。 原文地址:Linux时间子系统之(十六):c 阅读全文

posted @ 2017-06-25 22:11 ArnoldLu 阅读(2926) 评论(0) 推荐(0)

Linux时间子系统之(十四):tick broadcast framework

摘要: 专题文档汇总目录 Notes:BroadcastTick作为cpuidle的waker,硬件基础。BroadcastTick嵌入在当前系统Tick框架中。BroadcastTick设备初始化;周期性Tick和OneShot两种模式下BroadcastTick的工作。 原文地址:Linux时间子系统之 阅读全文

posted @ 2017-06-25 22:09 ArnoldLu 阅读(1695) 评论(0) 推荐(0)

Linux时间子系统之(十五):clocksource

摘要: 专题文档汇总目录 Notes:clocksource基本概念,struct clocksource详解;注册和注销clocksource;内核如何选取clocksource;clocksource相关sysfs;cyclecounter和timercounter。 原文地址:Linux时间子系统之( 阅读全文

posted @ 2017-06-25 22:09 ArnoldLu 阅读(1955) 评论(0) 推荐(0)

Linux时间子系统之(十三):Tick Device layer综述

摘要: 专题文档汇总目录 Notes:从概念层次描述了tick-comm、oneshot tick、broadcast tick;重点介绍了tick和tickless概念及其区别,两种tick device:periodic tick和oneshot tick;周期性时钟是如何运作的;高精度情况下,dyna 阅读全文

posted @ 2017-06-25 22:06 ArnoldLu 阅读(2669) 评论(0) 推荐(0)

Linux时间子系统之(十二):periodic tick

摘要: 专题文档汇总目录 Notes:TickDevice模式,以及clocckevent设备。TickDevice设备的初始化,TickDevice是如何加入到系统中的。周期性Tick的产生。 原文地址:Linux时间子系统之(十二):periodic tick 一、tick device概念介绍 1、数 阅读全文

posted @ 2017-06-25 22:05 ArnoldLu 阅读(2551) 评论(0) 推荐(0)

Linux时间子系统之(六):POSIX timer

摘要: 专题文档汇总目录 Notes:首先讲解了POSIX timer的标识(唯一识别)、POSIX Timer的组织(管理POSIX Timer)、内核中如何抽象POSIX Timer;然后分析了POSIX timer相关系统调用(timer_create/timer_gettime/timer_geto 阅读全文

posted @ 2017-06-25 22:04 ArnoldLu 阅读(7402) 评论(0) 推荐(0)

Linux时间子系统之(五):POSIX Clock

摘要: 专题文档汇总目录 Notes: 本章主要介绍了若干种类的静态时钟,这些时钟都可以通过k_clock表示,注册到posix_clocks中。这些都是静态时钟,可以分为三大类:各种REALTIME时钟、带_ALARM唤醒功能的时钟以及进程线程相关时钟。当然不是所有的时钟都具备定时器功能,但是所有的时钟都 阅读全文

posted @ 2017-06-25 22:03 ArnoldLu 阅读(3788) 评论(0) 推荐(0)

Linux时间子系统之(四):timekeeping

摘要: 专题文档汇总目录 Notes:timekeeping模块的狠心数据结构是timekeeper,它维护了系统不同类型时钟的时间值,并且介绍了获取不同类型时钟时间的函数。 clocksource切换通过clocksource_notify通知到timekeeper。最后介绍了timekeeper电源管理 阅读全文

posted @ 2017-06-25 22:02 ArnoldLu 阅读(3876) 评论(0) 推荐(1)

Linux时间子系统之(三):用户空间接口函数

摘要: 专题文档汇总目录 Notes:用户空间时间相关接口函数: time stime time_t 精度为秒级 逐渐要被淘汰。需要定义__ARCH_WANT_SYS_TIME才能支持。 设定时间的进程需具备CAP_SYS_TIME权限。 gettimerofday settimeofday timeval 阅读全文

posted @ 2017-06-25 22:02 ArnoldLu 阅读(7309) 评论(0) 推荐(0)

Linux时间子系统之(二):软件架构

摘要: 专题文档汇总目录 Notes:从框架上讲解了时间子系统,从底向上包括CPU Local TImer、Global Counter、Clock Souce/Clock Events模块管理、Tick Device、高精度timer、低精度timer、Broadcast timer、Timekeepin 阅读全文

posted @ 2017-06-25 22:01 ArnoldLu 阅读(5611) 评论(0) 推荐(0)

Linux时间子系统之(一):时间的基本概念

摘要: 专题文档汇总目录 Notes:Linux时间基准点;Linux时间和broken-down time(struct tm);不同精度的时间表示time_t、timeval、timespec。 原文地址:Linux时间子系统之(一):时间的基本概念 本文使用Q & A的方式来和大家以前探讨一下时间的基 阅读全文

posted @ 2017-06-25 22:00 ArnoldLu 阅读(4040) 评论(1) 推荐(0)

2017年5月31日

Linux Power Management Debug

摘要: 先从几份文档上总结一下经验。 Power Management, Debugging and Optimizations 《Power Management, Debugging and Optimizations》介绍了为什么要进行电源管理?电源管理相关的软硬件架构?如何去Debug,软件的和硬件 阅读全文

posted @ 2017-05-31 10:50 ArnoldLu 阅读(166) 评论(0) 推荐(0)

一个Linux平台PM功能初探

该文被密码保护。 阅读全文

posted @ 2017-05-31 08:21 ArnoldLu 阅读(7) 评论(0) 推荐(0)

2017年5月16日

Busybox下Bootchart的使用

摘要: Busybox包含了很多小工具,这些工具短小精悍有效。bootchartd就是其中之一。 Bootchart is a tool for performance analysis and virtualization of the GNU/Linux boot process. Resource u 阅读全文

posted @ 2017-05-16 15:29 ArnoldLu 阅读(453) 评论(0) 推荐(1)

2017年5月11日

Linux下一个GUI界面界面移植性能分析

该文被密码保护。 阅读全文

posted @ 2017-05-11 15:45 ArnoldLu 阅读(9) 评论(0) 推荐(0)

2017年5月4日

一个Linux系统开机时间优化实例

摘要: 从按下电源到进入工作状态(PowerKey—>Idle)是使用设备必经之路,开机时间的优化也就必不可少。 如果将从按下Power键到进入Idle状态(系统可用)作为度量标准,大部分的系统可以分为BootROM(芯片固化Firmware)、Bootloader(用于加载Kernel)、Kernel和用 阅读全文

posted @ 2017-05-04 10:59 ArnoldLu 阅读(295) 评论(0) 推荐(0)

2017年5月2日

Scratch&WeDO(1) 计划大纲

该文被密码保护。 阅读全文

posted @ 2017-05-02 11:54 ArnoldLu 阅读(5) 评论(0) 推荐(0)

2017年5月1日

Scratch、WeDo、Scratch&WeDo科普——能带来什么启示

该文被密码保护。 阅读全文

posted @ 2017-05-01 08:04 ArnoldLu 阅读(49) 评论(0) 推荐(0)

2017年4月12日

Linux内核中的算法和数据结构

摘要: 算法和数据结构纷繁复杂,但是对于Linux Kernel开发人员来说重点了解Linux内核中使用到的算法和数据结构很有必要。 在一个国外问答平台stackexchange.com的Theoretical Computer Science子板有一篇讨论实际使用中的算法和数据结构,Vijay D做出了详 阅读全文

posted @ 2017-04-12 14:40 ArnoldLu 阅读(11229) 评论(0) 推荐(0)

2017年4月10日

《Linux/Unix系统编程手册》 时间子系统

摘要: Linux下操作系统编程有两本经典APUE即《Advanced Programming in the UNIX Environment》和TLPI《The Linux Programming Interface》,中文版对应《UNIX环境高级编程(第3版)》和《Linux/UNIX系统编程》。 TL 阅读全文

posted @ 2017-04-10 20:11 ArnoldLu 阅读(3349) 评论(0) 推荐(0)

2017年4月7日

SourceInsight工具增强——AStyle(代码格式化)、PC-Lint(静态检查)

摘要: Artistic Style(AStyle) AStyle是一款开源、高效、精简的代码格式化工具,适用于C、C++、C#、Java等。官方地址在:http://astyle.sourceforge.net/。 AStyle支持Linux、Mac或者Windows,Windows下有预编译的exe文件 阅读全文

posted @ 2017-04-07 17:35 ArnoldLu 阅读(2302) 评论(0) 推荐(0)

2017年4月1日

读《Top benefits of continuous integration》有感

摘要: 看到一片文章《Top benefits of continuous integration》,这张图画的很棒。将整个CI流程各阶段,列举出来了。 作者在文章里面介绍了CI和TDD,以及采用CI的详细好处。尤其是采用CI的好处,作者讲解的很到位,看得出是实战得来的,而不是笼统的泛泛而谈。 对我的启发有两点:一,CI有哪些好处,实际中如何使用好;二,基于转盘图梳理一下各阶段用到的工具。 CI、T... 阅读全文

posted @ 2017-04-01 16:45 ArnoldLu 阅读(417) 评论(0) 推荐(0)

2017年3月25日

授人以鱼不如授人以渔,和女儿学一起学成语

摘要: 女儿二年级了,前段时间背了《小学生必背古诗词75首》,采用几天一篇,然后滚动复习这种方式。磕磕绊绊也把一本古诗背了一遍,效果吗?是有的,但是不怎么明显,前面背,后面忘。当然这是规律,难免的。 如果说语文是一座大厦,那么成语、歇后语、古诗句就是这座大厦的砖瓦了。一篇文章的精巧结构,这种大框架不是谁都有 阅读全文

posted @ 2017-03-25 10:40 ArnoldLu 阅读(2886) 评论(0) 推荐(0)

2017年3月24日

Linux内存使用情况以及内存泄露分析之工具与方法

摘要: 《Linux C/C++ Memory Leak Detection Tool》 1. 内存使用情况分析 1.1 系统总内存分析 通过cat /proc/meminfo,可用的物理内存=MemFree+Buffers+Cached。 MemTotal: 5933132 kBMemFree: 4485 阅读全文

posted @ 2017-03-24 17:37 ArnoldLu 阅读(20603) 评论(0) 推荐(2)

2017年3月18日

常用gcc选项

摘要: 《Linux GCC常用命令》 Makefile有三个非常有用的变量。分别是$@,$^,$<代表的意义分别是: $@--目标文件,$^--所有的依赖文件,$<--第一个依赖文件。 同时使用动态/静态库 GCC默认的链接库形式是动态的;如果要采用静态连接需要添加static参数,但是会导致整个GCC连 阅读全文

posted @ 2017-03-18 17:13 ArnoldLu 阅读(2203) 评论(0) 推荐(0)

2017年3月12日

KVM内核文档阅读笔记

摘要: KVM在内核中有丰富的文档,位置在Documentation/virtual/kvm/。 00-INDEX:整个目录的索引及介绍文档。 api.txt:KVM用户空间API,所谓的API主要是通过ioctl来实现的。 cpuid.txt:KVM的cpuid相关API。 devices/:各种平台相关 阅读全文

posted @ 2017-03-12 19:55 ArnoldLu 阅读(2922) 评论(0) 推荐(0)

2017年3月6日

关于Linux虚拟化技术KVM的科普 科普五(From 世民谈云计算)

摘要: 另一位大神写到KVM文章,KVM 介绍(1):简介及安装、KVM 介绍(2):CPU 和内存虚拟化、KVM 介绍(3):I/O 全虚拟化和准虚拟化 [KVM I/O QEMU Full-Virtualizaiton Para-virtualization]、KVM 介绍(4):I/O 设备直接分配和 阅读全文

posted @ 2017-03-06 16:45 ArnoldLu 阅读(1188) 评论(0) 推荐(0)

关于Linux虚拟化技术KVM的科普 科普四(From humjb_1983)

摘要: 另一组关于KVM的分析文档,虚拟化相关概念、KVM基本原理和架构一-概念和术语、KVM基本原理和架构二-基本原理、KVM基本原理及架构三-CPU虚拟化、KVM基本原理及架构四-内存虚拟化、KVM基本原理及架构六-KVM API、KVM基本原理及架构七-KVM内核模块中重要的数据结构。 阅读全文

posted @ 2017-03-06 16:43 ArnoldLu 阅读(767) 评论(0) 推荐(0)

关于Linux虚拟化技术KVM的科普 科普三(From OenHan)

摘要: http://oenhan.com/archives,包括《KVM源代码分析1:基本工作原理》、《KVM源代码分析2:虚拟机的创建与运行》、《KVM源代码分析3:CPU虚拟化》、《KVM源代码分析4:内存虚拟化》、《KVM源代码分析5:IO虚拟化之PIO》,可以有个基本认识,以及CPU、内存、IO虚 阅读全文

posted @ 2017-03-06 16:39 ArnoldLu 阅读(5033) 评论(0) 推荐(0)

关于Linux虚拟化技术KVM的科普 科普二(KVM虚拟机代码揭秘)

摘要: 代码分析文章《KVM虚拟机代码揭秘——QEMU代码结构分析》、《KVM虚拟机代码揭秘——中断虚拟化》、《KVM虚拟机代码揭秘——设备IO虚拟化》、《KVM虚拟机代码揭秘——QEMU的PCI总线与设备(上)》、《KVM虚拟机代码揭秘——QEMU的PCI总线与设备(下)》。先从大的方面分析代码结构,然后 阅读全文

posted @ 2017-03-06 16:38 ArnoldLu 阅读(3499) 评论(0) 推荐(0)

关于Linux虚拟化技术KVM的科普 科普一(先用起来!)

摘要: 是骡子是马是拉出来溜溜,通过《KVM虚拟化技术之使用Qemu-kvm创建和管理虚拟机》跑一遍,就会对KVM、QEMU-KVM有个大概的认识了。 qemu-kvm已经不单独存在,qemu加上-enable-kvm可以实现同样的功能。 关于不同CPU支持的硬件虚拟化技术,参考Processor_supp 阅读全文

posted @ 2017-03-06 16:37 ArnoldLu 阅读(3613) 评论(0) 推荐(2)

2017年3月3日

关于Linux虚拟化技术KVM的科普

摘要: 虚拟化技术应用越来越广泛,虚拟化技术需求越来越强劲。KVM、XEN、Docker等比较热门,尤其是KVM技术越来越受欢迎。 基于此背景,了解一下KVM+QEMU就有点必要了。 从网上收集了一些资料进行科普,由于篇幅太长,分开如下: 《关于Linux虚拟化技术KVM的科普 科普一(先用起来!)》 《关 阅读全文

posted @ 2017-03-03 22:19 ArnoldLu 阅读(6233) 评论(0) 推荐(0)

开源HTTP解析器---http-parser和fast-http

摘要: 由于项目中遇到需要发送http请求,然后再解析接收到的响应。大概在网上搜索了一下,有两个比较不错,分别是http-parser和fast-http。 http-parser是由C编写的工具;fast-http是大部分移植自http-parser,用lisp语言编写的,不太适合目前的项目。fast-http介绍文档《fast-http》。 有一篇文章《HTTP 协议解析库:fast-http》介绍了... 阅读全文

posted @ 2017-03-03 17:49 ArnoldLu 阅读(26544) 评论(2) 推荐(0)

上一页 1 ··· 7 8 9 10 11 12 下一页

导航