
Linux
江上渔者21号
这个作者很懒,什么都没留下…
展开
-
查看日志命令
grep 上下日志查看https://blog.youkuaiyun.com/huashao0602/article/details/78018743原创 2021-03-18 16:01:18 · 190 阅读 · 0 评论 -
cpu负载过高原因
CPU 使用率低高负载的原因,看看这篇!https://segmentfault.com/a/1190000020459073linux 排查cpu负载过高原因https://blog.youkuaiyun.com/qq_40907977/article/details/102912861原创 2020-09-28 09:30:05 · 1578 阅读 · 0 评论 -
sendfile:Linux中的"零拷贝"
https://www.jianshu.com/p/fad3339e3448如今几乎每个人都听说过Linux中所谓的"零拷贝"特性,然而我经常碰到没有充分理解这个问题的人们。因此,我决定写一些文章略微深入的讲述这个问题,希望能将这个有用的特性解释清楚。在本文中,将从用户空间应用程序的角度来阐述这个问题,因此有意忽略了复杂的内核实现。什么是”零拷贝”为了更好的理解问题的解决法,我们首先...转载 2019-03-17 19:06:27 · 161 阅读 · 0 评论 -
磁盘系统基本概念以及磁盘的顺序读写与随机读写
本文总结自(1)《数据库系统实现》(2)知乎:https://www.zhihu.com/question/482547801.基本概念2.细节3.顺序读写和随机读写1.基本概念(1)磁盘组合盘片=2盘面主轴磁道柱面扇区间隙块:对于理解数据库系统特别重要的是磁盘被划分为磁盘块(或就称为块,或者像操作系统称为页),每块的大小是4-64kB。整个块被从一个...转载 2019-03-17 19:22:28 · 4209 阅读 · 0 评论 -
如何选择合适的 GC 时间 —— USER, SYS, REAL理解
在 GC 日志文件中,每个 GC 事件有三种类型的时间: user sys real 例如:[Times: user=11.53 sys=1.38, real=1.03 secs].在我们开始分析 GC 日志的时候,会遇到两个问题:1、user、sys和real三者之间有什么不同?2、我们该使用哪一个时间来分析日志?Unix 的 Time...转载 2019-03-07 23:43:43 · 3349 阅读 · 0 评论 -
Linux CPU性能分析与监控——vmstat、top
Linux性能监控工具汇总:iostat 磁盘性能监控 vmstat 虚拟内存性能监控、CPU监控(进程上下文切换、CPU利用率) top 系统负载、CPU使用率、各个进程的详细报告(CPU使用率、内存使用情况)等 free 内存使用情况。 ps ps命令不算是性能监控工具,但是可以使用ps配合上述命令,找到占有系统资源较高的进程本文重点讲下vmstat的用法,其他如top不做讲解,...转载 2019-03-23 12:00:28 · 1235 阅读 · 0 评论 -
两个进程同时访问同一个文件
对于多个进程打开同一文件的情况,每个进程都有它自己的文件表项(file对象),其中有它自己的文件位移量,所以对于多个进程读同一文件都能正确工作。但是,当多个进程写同一文件时,则可能产生预期不到的结果。(可以使用pread,pwrite)。总结:两个独立进程打开同一文件,对应不同的file对象,每个进程调用close只影响本进程的“打开文件计数”(file对象的引用计数)。可以先打开着...转载 2019-04-08 09:06:06 · 25005 阅读 · 0 评论 -
linux中mmap与read/write操作文件的区别
在介绍mmap和read/write之前,首先先要介绍一下基础知识,其中包括磁盘,文件系统,内存。 首先说一下文件系统,linux文件系统的三层结构想必大家多少都了解一些,每个进程中都有一个用户文件描述符表,表项指向一个全局的文件表中的某个表项,文件表表项有一个指向内存inode的指针,每个inode唯一标识一个文件。如果同时有多个进程打开同一文件,他们的用户文件描述符表项指向不同的...转载 2019-05-24 00:55:55 · 1022 阅读 · 0 评论 -
Linux内存点滴:用户进程内存空间
经常使用top命令了解进程信息,其中包括内存方面的信息。命令top帮助文档是这么解释各个字段的。VIRT , Virtual Image (kb)RES, Resident size (kb)SHR, Shared Mem size (kb)%MEM, Memory usage(kb)SWAP, Swapped size (kb)CODE, Code size (kb)DATA, D...转载 2019-05-24 00:57:37 · 198 阅读 · 0 评论 -
linux 查找某个文件按按时间排序
查找当前目录下的 .metadata 文件夹,按时间顺序排序,并且将文件夹下面的文件列出,find ./ -name .metadata |xargs ls -lt原创 2019-08-24 19:27:53 · 3449 阅读 · 0 评论 -
pageCache
写在前面在开始正式的讨论前,我先抛出几个问题:谈到磁盘时,常说的HDD磁盘和SSD磁盘最大的区别是什么?这些差异会影响我们的系统设计吗? 单线程写文件有点慢,那多开几个线程一起写是不是可以加速呢? write(2)函数成功返回了,数据就已经成功写入磁盘了吗?此时设备断电会有影响吗?会丢失数据吗?write(2)调用是原子的吗?多线程写文件是否要对文件加锁?有没有例外,比如O_APPE...转载 2019-03-17 19:19:40 · 2193 阅读 · 6 评论 -
pidstat 命令
–细致观察进程–需要安装• sudoapt-get install sysstat–监控CPU–监控IO–监控内存-p 指定进程–u监控CPU每秒采样一共3次-d 表示监控线程原创 2018-06-22 00:10:36 · 359 阅读 · 0 评论 -
错误定位命令 grep 关键件 sed 打印对应的行号
grep 打印出行号[dongfucai@csc-pacific-task-service01.beta csc-pacific-task-service]$ grep -rin 董付财_20180607115557.xlsx service.log 1772963:2018-06-07 12:02:43.419 - - [INFO] pool-20-thread-1 MafkaLogger #X...原创 2018-06-07 14:45:08 · 1216 阅读 · 0 评论 -
vim 的使用
显示两个不同的文件;或者同时显示一个文件的两个不同地方;又或者并排比较两个文件。这一切都可以通过分割窗口实现。打开新窗口最简单的命令如下::split (水平分割) || :vsplit (垂直分割)可以简写sp 或者vs这个命令把屏幕分解成两个窗口并把光标置于上面的窗口中.CTRL-W w 命令可以用于在窗口间跳转。如果你在上面的窗口,它会跳转到下面的窗口,如果你在下面的窗口,它会跳转到上面的窗...原创 2018-06-20 15:01:51 · 183 阅读 · 0 评论 -
Linux的编码及编码转换
如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题。Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8。下面介绍一下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换。 查看文件编码在Linux中查看文件编码可以通过以下几种方式:1.在Vim中可以直接查看文件编码:set fileencoding即可显示文件编...转载 2018-06-20 15:11:26 · 302 阅读 · 0 评论 -
搜索文件夹中的文本中的字符串
使用命令grep -rl 'abc' /(有引号)-r 选项表示递归(recursive)遍历所有子目录-l 选项表示只列出文件名/ 是根文件夹, 表示全盘原创 2018-06-27 18:13:13 · 848 阅读 · 0 评论 -
Makefile 中的命令
$(filter PATTERN…,TEXT) 函数名称:过滤函数—filter。 函数功能:过滤掉字串“TEXT”中所有不符合模式“PATTERN”的单词,保留所有符合此模式的单词。可以使用多个模式。模式中一般需要包含模式字符“%”。存在多个模式时,模式表达式之间使用空格分割。 返回值:空格分割的“TEXT”字串中所有符合模式“PATTERN”的字串。 函数说明:“filter”函数可以用来去除...转载 2018-07-13 23:18:28 · 1579 阅读 · 0 评论 -
netstat和lsof 的区别
netstatnetstat用来查看系统当前系统网络状态信息,包括端口,连接情况等,常用方式如下:netstat -atunlp,各参数含义如下:-t : 指明显示TCP端口 -u : 指明显示UDP端口 -l : 仅显示监听套接字(LISTEN状态的套接字) -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序 -n : 不进行DNS解析 -a 显示所有连接...转载 2018-07-20 11:22:42 · 5816 阅读 · 1 评论 -
swap 分区
Swap交换分区概念 什么是Linux swap space呢?我们先来看看下面两段关于Linux swap space的英文介绍资料: Linux divides its physical RAM (random access memory) into chucks of memory called pages. Swapping is the process whereby a...转载 2019-01-07 14:37:43 · 704 阅读 · 0 评论 -
linux内存管理---虚拟地址、逻辑地址、线性地址、物理地址的区别(一)
分析linux内存管理机制,离不了上述几个概念,在介绍上述几个概念之前,先从《深入理解linux内核》这本书中摘抄几段关于上述名词的解释:一、《深入理解linux内核》的解释逻辑地址(Logical Address) 包含在机器语言指令中用来指定一个操作数或一条指令的地址(有点深奥)。这种寻址方式在80x86著名的分段结构中表现得尤为具体,它促使windows程...转载 2019-01-13 11:49:10 · 354 阅读 · 0 评论 -
linux 文件系统详情
从操作系统的角度详解Linux文件系统层次、文件系统分类、文件系统的存储结构、不同存储介质的区别(RAM、ROM、Flash)、存储节点inode。转载本文请注明出处,本文参考: http://blog.chinaunix.net/uid-8698570-id-1763151.html http://www.iteye.com/topic/816268 ...转载 2019-01-20 00:02:54 · 507 阅读 · 0 评论 -
计算机为什么要设置线性地址,从逻辑地址到线性地址再到物理地址?
作者:龚黎明链接:https://www.zhihu.com/question/41431386/answer/91115537来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 逻辑地址是给操作系统之上的软件看的。他们不需要知道硬件是怎么设计的,只需要一台理想的虚拟机就可以了。这样是为了同样的软件应用于不同的硬件上。线性地址是给CPU看的。CPU不需要知...转载 2019-01-20 11:03:43 · 500 阅读 · 0 评论 -
linux内存映射mmap原理分析
个人分类:linux内核设计与实现内存映射,简而言之就是将用户空间的一段内存区域映射到内核空间,映射成功后,用户对这段内存区域的修改可以直接反映到内核空间,同样,内核空间对这段区域的修改也直接反映用户空间。那么对于内核空间<---->用户空间两者之间需要大量数据传输等操作的话效率是非常高的。以下是一个把普遍文件映射到用户空间的内存区域的示意图。图一:二、基本函数...转载 2019-03-26 21:43:20 · 144 阅读 · 0 评论 -
uptime
23:57 up 10 days, 12:40, 2 users, load averages: 2.58 2.75 2.91–系统时间–运行时间•例子中为7分钟–连接数•每一个终端算一个连接–1,5,15分钟内的系统平均负载•运行队列中的平均进程数...原创 2018-06-21 23:58:28 · 1227 阅读 · 0 评论