- 博客(141)
- 资源 (10)
- 收藏
- 关注
原创 协程的原理与实现:qemu 之 Coroutine
一,概念在操作系统(os)级别,有进程(process)和线程(thread)两个我们看不到但又实际存在的“东西”,这两个东西都是用来模拟“并行”的,并且在OS内做为调度的实体单元,各自拥有独立的CPU资源。Coroutine: 翻译成”协程“, 但它实际上并不是一个可由OS调度的实体,而是可以理解为“由用户层自己调度执行的一段代码片段”。二,进程,线程,协程Process: 进程。进程...
2019-06-28 17:49:12
1394
1
原创 UEFI 与Linux基础:一
UEFI 与LinuxBIOS: 是系统开机后执行的第一个firmware程序, 它通常存储在主板的flash memory中,与系统存储无关。UEFI:支持读取分区表,和文件系统。UEFI不会执行MBR中的任何代码。而是启动NVRAM中的boot entries.UEFI标准强制要求支持 FAT12,FAT16,FAT32文件系统(详见UEFI 标准2.7, Section 13.3.1....
2019-06-13 12:14:25
9627
翻译 UEFI Secure Boot
本文参考:https://www.suse.com/media/presentation/uefi_secure_boot_webinar.pdfSecure BootUEFIUEFI: Unified Extensible Firmware Interface–基于旧的已存在的标准EFI。–用于替代传统的BIOS。Secure Boot–用于防止执行一个已被感染的OS。–它只是...
2019-06-13 11:39:04
5981
转载 Linux TCP队列相关参数的总结
作者:阿里技术保障锋寒原文:https://yq.aliyun.com/articles/4252 在Linux上做网络应用的性能优化时,一般都会对TCP相关的内核参数进行调节,特别是和缓冲、队列有关的参数。网上搜到的文章会告诉你需要修改哪些参数,但我们经常是知其然而不知其所以然,每次照抄过来后,可能很快就忘记或混淆了它们的含义。本文尝试总结TCP队列缓冲相关的内核参数,从协议栈的角度...
2018-07-18 21:33:45
498
原创 ps 计算CPU利用率原理
ps -o pcpu pid 可以查询进程pid所占用的CPU利用率。 top 计算CPU的利用率:top计算进程cpu利用率: http://www.samirchen.com/linux-cpu-performance/ cat /proc/stat //查看总的CPU情况 cat /proc/[pid]/stat //查看进...
2018-07-18 21:29:59
4766
原创 linux下信号跟踪:jprobe_signal
问题描述:在linux环境下,有时候进程会异常退出,这个时候可以用strace 跟踪进程的运行情况。如果是进程内部错误,则strace日志可以看到进程的异常错误点。但如果是被其它人或进程杀掉(kill), 则strace 日志里只能看到被杀信息:"+++ killed by SIGKILL +++"。 此时要找到“杀手”进程,就需要跟踪信号量,找出是谁发送了信号量给目标进程。/*jprobe_...
2018-07-18 21:26:09
1363
1
转载 QEMU动态翻译器
QEMU动态翻译器原创 2017-08-17 翻译 牛牛 云技术实践摘要:分析下Qemu的内部结构,qemu大概是一个使用原始便携动态翻译器的快速机器仿真工具,。它能在很多机器上(x86, ARM PowerPC, Sparc….) 仿真CPU (x86, ARM,PowerPC, Sparc),QEMU支持完整的系统仿真,可以在虚拟机和Linux用户模式下仿真完整
2017-08-18 13:46:35
1075
转载 KVM网络性能调优终极版
四、KVM网络性能调优首先,我给大家看一张图,这张图是数据包从虚拟机开始然后最后到物理网卡的过程。我们分析下这张图,虚拟机有数据包肯定是先走虚拟机自身的那张虚拟网卡,然后发到中间的虚拟化层,再然后是传到宿主机里的内核网桥中,最后传到物理网卡,这个过程很好理解。那么我们要做网络的优化,让虚拟机的网络运行得更加高效,我们要想的就是让虚拟机访问到物理网卡的层次要少。或者说能不能让宿主机的
2017-08-11 11:35:01
4178
转载 KVM 性能优化之磁盘IO优化
接着第三块的内容,KVM磁盘性能方面的调优。磁盘IO方面我们可以从以下四个方面去着手优化:磁盘类型选择缓存模式选择AIO 异步读写方式选择磁盘IO调度器选择1. 磁盘类型选择磁盘方面,建议是用Virtio模式,在CentOS7.1 中,磁盘的类型有IDE 、SATA 以及virtio 三种。磁盘这块也有完全
2017-08-11 11:23:20
2236
1
转载 KVM 性能优化之内存优化
我们说完CPU方面的优化,接着我们继续第二块内容,也就是内存方面的优化。内存方面有以下四个方向去着手:EPT 技术大页和透明大页KSM 技术内存限制1. EPT技术EPT也就是扩展页表,这是intel开创的硬件辅助内存虚拟化技术。我们知道内存的使用,是一个逻辑地址跟物理地址转换的过程。虚拟机内部有逻辑地址转成成
2017-08-11 11:21:14
1411
转载 KVM 性能优化之CPU优化
转载于--云技术实践前言任何平台根据场景的不同,都有相应的优化。不一样的硬件环境、网络环境,同样的一个平台,它跑出的效果也肯定不一样。就好比一辆法拉利,在高速公路里跑跟乡村街道跑,速度和激情肯定不同...所以,我们做运维工作,也是如此。首先你得充分了解你所用的软件平台,然后根据你现有的生产环境去充分的测试,最后得出结果,做最优的调整。KVM也是一样,首先要做
2017-08-11 11:18:25
1170
原创 CPU负载计数load average
gchen:/home/gchen # cat /proc/loadavg 0.01 0.03 0.05 1/199 23410最近1分钟可运行进程数,R+D最近5分钟可运行进程数,R+D最近15分钟可运行进程数,R+D当前可运行的进程数R当前总的进程和线程数nr_threads,在copy_progress里增加最近使用的PID号,(进程个数最大限制为3276
2016-11-13 02:32:34
994
原创 MCA机制:硬件错误检测架构
一,MCA 硬件检测机制1,Intel MCA硬件机制 Intel引入了MACHINE-CHECK ARCHITECTURE(MCA) 和 machine-check exception(#MC)机制用来对服务器硬件进行自检,并在发现硬件错误的时候发出中断或异常。系统软件收到中断或异常后,会对其进行响应,进行相应的修复、告警或其他策略等动作。通过Intel的这个RAS特性,保...
2016-11-02 00:54:51
28459
5
原创 SCSI设备IO过程:磁盘上线与IO过程
一,SCSI设备上报过程:硬盘上线过程SATA盘AHCI控制器初始化过程:ahci_init() ->pci_module_init(&ahci_pci_driver);static struct pci_driver ahci_pci_driver = {.name = DRV_NAME,.id_table = ahci_pci_tbl,.probe =
2016-10-31 00:40:05
6311
转载 网络优化之TIME_WAIT和CLOSE_WAIT
来源微信订阅号:大房说你遇到过TIME_WAIT的问题吗?我相信很多都遇到过这个问题。一旦有用户在喊:网络变慢了。第一件事情就是,netstat -a | grep TIME_WAIT | wc -l 一下,哎呀妈呀,几千个TIME_WAIT。然后,做的第一件事情就是:打开Google或者Bing,输入关键词:too many time wait。一定能找到解决
2016-06-14 10:50:33
659
转载 网络优化之net.ipv4.tcp_tw_recycle参数
来源:http://mp.weixin.qq.com/s?__biz=MzA3MzYwNjQ3NA==&mid=403232978&idx=1&sn=4ed396ac1999add1c866419bd62b0e75&scene=0#wechat_redirect本文为翻译英文BLOG《Coping with the TCP TIME-WAIT
2016-06-14 10:36:48
26184
转载 Linux TCP队列相关参数的总结
作者:阿里技术保障锋寒原文:https://yq.aliyun.com/articles/4252在Linux上做网络应用的性能优化时,一般都会对TCP相关的内核参数进行调节,特别是和缓冲、队列有关的参数。网上搜到的文章会告诉你需要修改哪些参数,但我们经常是知其然而不知其所以然,每次照抄过来后,可能很快就忘记或混淆了它们的含义。本文尝试总结TCP队列缓冲相关的内核参数,
2016-06-14 09:34:00
1034
原创 磁盘配额:NAS 用户 容量限制
磁盘配额:disk quota 通过实现磁盘配额可以限制磁盘空间,当一个用户消耗太多的磁盘空间或磁盘分区被写满时给系统管理员报警。 在linux中我们只能使用超级管理员root用户进行磁盘配额的设置,并且磁盘配额是基于文件系统的,也就是必须在文件系统上配置磁盘配额。 我们可以对用户或组的所能使用的空间大小或是创建的文件个数进行限制。限制可以分
2015-12-17 17:16:41
9881
转载 linux原子/位操作
1、基本概念原子操作可以保证指令以原子的方式执行,执行过程不被打断。它通过把读取和修改变量的行为包含在一个单步中执行,从而防止了竞争的发生,保证操作结果总是一致的。例如:int i=9;线程1:i++i=9 OR i=8线程2i–;i=9 OR i=8两个线程并发的执行,导致结果不确定性。原子操作的作用
2015-11-19 18:49:15
2224
原创 lvm 常用命令
一,lvm: Logical Volume Manager(逻辑卷管理)pv: 物理卷(PE: Physical Extent)物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘。PE:物理区域是物理卷中可用于分配的最小存储单元,物理区域的大小可根据实际情况在建立物理卷时指定。物理区域大小一旦确定将不能更改,同一卷组中的所有物理卷的物理区域大
2015-11-17 17:36:09
14782
转载 Linux 性能优化之 IO 子系统
本文介绍了对 Linux IO 子系统性能进行优化时需要考虑的因素,以及一些 IO 性能检测工具。本文的大部分内容来自 IBM Redbook - Linux Performance and Tuning GuidelinesFileSystemVFS(Virtual FileSystem) 虚拟文件系统文件系统是
2015-11-17 09:09:35
1473
转载 iostat 磁盘性能统计
磁盘性能统计iostat统计磁盘信息的时候,使用的是/proc/diskstats 。而/proc/diskstats是谁在写入呢?主要数据结构://genhd.hstruct disk_stats { unsigned long sectors[2]; /* READs and WRITEs */ unsigned long ios[2];
2015-10-19 17:02:24
1605
翻译 mount.cifs
mount.cifs描述这个工具是 cifs-utils软件包的一部分。mount.cifs 用于挂载 CIFS 文件系统。它通常由使用"-t cifs"选项的 mount(8) 命令间接调用。这个命令只能在支持 CIFS 文件系统的Linux内核上使用。CIFS 协议是 SMB 协议的替代版本,它被包括 Windows 在内的几乎所有操作系统所以及 NAS(Network
2015-09-16 16:11:48
20325
原创 读取未挂载的设备上的文件系统类型:char * fstype(char*device)
最近因项目需要,需要对块设备进行判断:是否有文件系统,以及文件系统的类型。 参考自mkfs.xfs的源代码#include #include #include #include #include #include #include "fstype.h"#undef XFS_SUPER_MAGIC/* * From mount(8) source by Andries B
2015-09-12 16:37:32
1860
原创 ssh 无密码登录
方案1:#!/sbin/shremoteip=$1if [ -z $remoteip ];thenecho -n "please input remote ip"return 0fiecho | ssh-keygen -e ssh-copy-id -i ~/.ssh/id_rsa.pub $remote方案2:sshpass
2015-07-20 16:43:40
787
原创 NTFS关闭日志
关闭NTFS日志功能:在cmd中运行 fsutil:fsutil usn createjournal m=1000 a=100 c: //创建日志fsutil usn deletejournal /d c: //删除日志fsutil usn enumdata 1 0 1 c: //枚举日志项fsutil usn queryjournal c: //读取一个卷的USN日志
2015-06-02 13:59:53
18466
1
原创 linux 网络配置文件说明
来源: linux系统架构与目录解析FHS--filesystem hierarchy standard http://www.pathname.com/fhs//etc/hostname用来存储系统的host name, FQDN(完全合格域名)。如: deep.openna.com/etc/host.conf (libc 版本5使用)linux中通过解
2015-05-04 15:05:07
1675
原创 linux 网络管理与开发
各种接品网络接口函数与结构体:#include #include int socket(int domain,int type,int protocol);int bind(int socket,const struct sockaddr*address,size_t address_len);int listen(int socket,int backlog);int
2015-01-12 15:59:44
1848
原创 C/C++从文件末尾往前一行一行的读
int read_tail_line(FILE *fd,char *buf){ //从后往前一行一行的读取 int c,ret; long offset; if(ftell(fd)==0){ return -1; } while(1){ c=fgetc(fd); if(c
2014-08-20 15:40:28
9330
原创 文件系统mount过程
SYSCALL_DEFINE5(mount, char __user *, dev_name, char __user *, dir_name,char __user *, type, unsigned long, flags, void __user *, data)dev_name:设备名dir_name:挂载的目录type:文件系统内型flags:挂载标志data:文
2014-07-21 14:13:52
1529
翻译 GDB 调试手册
gdb 调试手册1,使用gdb 调试器1.1,编译时加入调试符号gcc -g program.c -o programname1.2, 用gdb调试器运行程序gdb programname(gdb) run arg1 arg2 ... //带参运行1.3,在gdb调试器中重新运行(gdb) kill //杀死运行中的程序Kill the progr
2014-07-21 11:30:09
1616
原创 磁盘SMART信息详解
IDID十六进制值英文名中文译名最优说明10x01read error rate底层数据读取错误率存储器从一个硬盘表面读取数据时发生的错误率。原始值由于不同厂商的不同计算方法而有所不同,其十进制值往往无意义的。一般来说有数值意味着磁头已出现问题了。20x02Throughpu
2014-06-05 14:29:11
37358
原创 device-mapper 之 dm-cache分析
/**************************************************************************** * dm-cache.c * Device mapper target for block-level disk caching * * Copyright (C) International Business Machi
2014-05-04 15:38:31
3763
原创 SSH,rsync,inotifywait
ssh认证方式:一,正常认证:输入 user;passwd远程登录:ssh 192.168.1.108root@192.168.1.108's password: 远程执行命令:ssh 172.18.6.227 ls -l /root@192.168.1.108's password: 远程执行多个命令:ssh 172.18.6.227 “cd / ; ls -
2014-04-16 16:34:51
2055
转载 slab内存分配------内存池mempool
一:概述采用伙伴算法分配内存时,每次至少分配一个页面。但当请求分配的内存大小为几十个字节或几百个字节时应该如何处理?如何在一个页面中分配小的内存区,小内存区的分配所产生的内碎片又如何解决?Linux采用Slab。Linux 所使用的 slab 分配器的基础是 Jeff Bonwick 为 SunOS 操作系统首次引入的一种算法。Jeff 的分配器是围绕对象缓存进行的。在内核中,会为
2014-04-03 17:19:15
6871
原创 NFS 总结 (未完)
NFS version 2 [RFC1094], NFS version 3 [RFC1813],NFS version 4 [RFC3530].NFS配置目录:/etc/nfsmount.conf在fstab中的的挂载目录:server:path /mountpoint fstype option,option,... 0 0服务器:共享目录
2014-03-18 17:41:28
3659
jre-6u45-windows-x64.7z
2020-01-13
jre-7u80-windows-x64.7z
2020-01-13
Source insight 3.5.0076 及注册码
2018-09-24
NewHire-training
2017-09-19
redhat windows samba 协同工作
2013-09-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人