为什么要实现软件定时器:
在芯片上,地址空间也是相当宝贵的,如果保留了更多的硬件定时器的话,就需要更多的地址空间,那么我们能不能作个折中方案呢?答案是肯定的,我们可以使用一个硬件定时器,来模拟实现一个软件定时器,可以满足更多的定时需求,需要注意的一点就是软件定时器精度可能会有稍微误差,因为会涉及到任务调度、锁中断等,在对定时精度要求不高的场景,可以考虑使用软件定时器。Linux内核中的timer...
分类:
其他好文 时间:
2014-06-05 11:38:35
阅读次数:
242
今天用虚拟机挂载了一个镜像文件,结果虚拟机不能打开(见下图),结果我还以为是我挂载的操作给影响的,后来经过谷歌查询,原来是因为linux内核升级的原因。仔细的想了一下,自己的确在上次关机的时候给电脑更新过软件。谷歌查询了解决办法,知道了原因,不过没按照网上说的去做。我是把虚拟机卸载(不会删除自己虚拟的系统),然后重新安装,结果就可以正常使用了。
卸载虚拟机VirtualBox(可以输入vir然后...
分类:
其他好文 时间:
2014-06-05 11:33:59
阅读次数:
222
之前没有ARMv8手册,所有问题只能从Linux内核源码中找答案,例如一下几个问题:
问题1:支持ARMv8的Linux内核异常向量地址在哪?
问题2:找出TLB中存放的ARMv8的页表格式?
问题3:ARMv8中重要的控制寄存器的各位的意思是什么?...
分类:
其他好文 时间:
2014-06-05 10:02:31
阅读次数:
284
由于默认的Linux内核参数考虑的是最通用的场景,这明显不符合用于支持高并发访问的Web服务器的定义,所以需要修改Linux内核参数,使得Nginx可以拥有更高的性能。
在优化内核时,可以做的事件很多,不过,我们通常会根据业务特点来进行调整,当Nginx作为静态Web内容服务器、反向代理服务器或是提供图片缩略功能(实时压缩图片)的服务器时,其内核参数的调整都是不同的。这里只针对最通用的、使Ngi...
分类:
系统相关 时间:
2014-06-04 23:18:19
阅读次数:
383
缺页处理程序//下面函数将一页内存页面映射到指定线性地址处,它返回页面的物理地址
//把一物理内存页面映射到线性地址空间指定处或者说把线性地址空间指定地址address处的页面映射到主内存区页面page上。主要工作是在相关也目录项和页表项中设置指定页面的信息。在处理缺页异常函数do_no_page中会调用这个函数。
参数:address--线性地址;page--是分配的主内存区中某一页面指针
st...
分类:
系统相关 时间:
2014-06-04 22:01:30
阅读次数:
433
C语言本身是不支持继承和多态的,但其实在 C
的世界里,有一套非常有名的面向对象的框架,用的也非常广,那就是GObject,它是整个图形界面开发库 GTK 的基石,在IBM
developerWorks上有一篇很好的文章介绍 GObject《GObject对象系统》。另外,在 Linux 内核里.....
分类:
编程语言 时间:
2014-06-03 12:20:16
阅读次数:
491
当我们在应用程序中编写write系统调用,向磁盘中写入数据时,写入请求会先调用底层写函数,将请求先写入内存中的页高速缓存(page cache)中,写入成功则立刻返回,真正的写入磁盘操作会延迟执行。Page cache是硬盘在内存中的一个缓存,是linux内核所使用的主要磁盘高速缓存,在绝大多数情况下,内核在读写磁盘时都引用page cache(极少数应用会绕过页高速缓存,如数据库软件)。...
分类:
其他好文 时间:
2014-06-02 22:38:57
阅读次数:
311
一、Android的体系结构1.1体系结构从下往上进行层概述:Linux内核层:该层主要的作用是:对系统进行管理例如:驱动管理,电源管理,进程管理,安全管理,内存管理等等。硬件抽象层:该层主要的作用是:对Linux底层实现进行屏蔽,向上提供接口,该层不开源,主要是为了维护商家的利益,但是会影响系统的...
分类:
移动开发 时间:
2014-05-31 01:08:13
阅读次数:
516
这个结构从list.h 移到了types.h,
可见内核对循环链表的重视include/linux/types.h中定义struct list_head { struct list_head *next,
*prev;};include/linux/list.h 中的宏初始化 一个叫name的链表节...
分类:
系统相关 时间:
2014-05-30 23:10:13
阅读次数:
412
由于Android是基于Linux内核的操作系统。因此,在Android上可以执行Shell命令。 chenbjin@acer:~$adbshell
shell@android:/ $ su 拿到root权限 ls 查看文件夹 cd 改变目录 cat 查看文件 rm 删除文件 mkd...
分类:
数据库 时间:
2014-05-30 16:58:36
阅读次数:
380