前面的几篇文章里讨论过了进程上下文切换和系统调用对系统性能的影响,我们今天再来看另外一个CPU吃货,那就是软中断。 你在用vmstat或者其他一些工具查看系统CPU消耗的时候,发现有两列是单独列出来的,分别是是hi和si。他们分别是硬中断和软中断。既然vmstat把中断的开销单独列出来了,就说明一个 ...
分类:
其他好文 时间:
2020-11-01 21:59:48
阅读次数:
21
这是对引擎strace 的结果,可以看到引擎在回复报文的时, 频繁的使用write 系统调用,报文内容可以看到就是一个http响应报文, 正常情况应该是只会调用一次write回复报文,但是实际情况是调用了多次write回复报文,根据http报文的响应头、响应行等依次回复报文。 所以优化方式: 将多次 ...
分类:
其他好文 时间:
2020-10-29 10:18:25
阅读次数:
23
当多个独立的I/O事件同时发生时,I/O多路复用是一种解决方式。 为了提高服务器的吞吐量,单个线程通过记录跟踪每个I/O流的状态同时管理多个I/O流,非常类似时分复用技术。 I/O多路复用的具体实现方式有3种:select()、poll()和epoll()。 select select()系统调用: ...
分类:
其他好文 时间:
2020-10-24 10:14:46
阅读次数:
21
废话不多说开代码 在父进程调用wait() #include<stdio.h> #include<unistd.h> #include<sys/wait.h> int main(int argc,char *argv[]){ int rc=fork(); if(rc==0){ printf("i a ...
分类:
系统相关 时间:
2020-10-19 22:56:22
阅读次数:
29
一开始我也不是很懂,后来看了一篇别人的博客觉得写得特别好,现在拷贝下来分享一下。 ...
分类:
系统相关 时间:
2020-10-16 11:25:38
阅读次数:
45
操作系统-C语言与汇编混合编程1.使用汇编语言编写Linux可执行程序a.定义_start标签作为程序执行的起点b.通过int0x80使用内核服务(执行系统调用)global_start;标签程序入口处[section.data]vstrdb"D.T.Software",0x0A[section.text]_start:;appentrymovedx,13movecx,vstr;"D.T.Soft
分类:
编程语言 时间:
2020-10-13 17:25:33
阅读次数:
29
#转自 https://blog.csdn.net/liubin8095/article/details/9328563 Activity中有一个名称叫onCreate的方法。该方法是在Activity创建时被系统调用,是一个Activity生命周期的开始。可是有一点容易被忽视,就是onCreate ...
分类:
其他好文 时间:
2020-10-09 20:49:48
阅读次数:
25
https://man7.org/linux/man-pages/man1/strace.1.html 名称解析: strace - trace system calls and signals[跟踪系统调用和信号] 概要 strace [-ACdffhikqqrtttTvVwxxyyzZ] [-I ...
分类:
其他好文 时间:
2020-09-24 21:08:59
阅读次数:
52
3.1用户默认启动shell在/etc/passwd最后一个字段设置3.2shell提示符$普通用户,#root用户3.3bash手册man/info/--helplinux手册页的区域内容1可执行程序或者shell命令2系统调用3库调用4特殊文件5文件格式与约定6游戏7概览、约定及杂项8超级用户和系统管理员命令9内核例程man7hostname3.4文件系统Linux将文件存储在单个目录结构中,
分类:
系统相关 时间:
2020-09-23 23:55:54
阅读次数:
57
1 文件锁 文件锁,也被成为记录锁,可以控制不同进程对于同一个文件的同步访问,linux底下 实现的机制有flock(),该调用是对整个文件进行加锁。还有lockf以及fcntl,其中lockf是对 fcntl的封装,可以实现对文件当中的某个部分进行加锁,flock和lockf都是建议锁而非强制 锁 ...
分类:
系统相关 时间:
2020-09-17 23:17:43
阅读次数:
39