cpu参数

6.云计算&大数据_linux基础知识(5)计算机为何物_计算机如何运作(内功)

萝らか妹 提交于 2019-12-02 13:15:17
没有软件的运作,计算机的功能就无从发挥,硬件资源需要软件的调度才能发挥作用,目前的计算机系统将软件分为两大类,一个是系统软件,一个是应用程序 一.机器程序与编译程序 计算机最重要的运算与逻辑判断是在CPU内部, 而CPU其实是具有微指令集的。因此,我们需要CPU帮忙工作时,就得要参考微指令集的内容, 然后撰写让CPU读的懂得指令码给CPU执行 综上的话,我们需要如下技能 需要了解机器语言:机器只认识0与1,因此你必须要学习直接写给机器看的语言! 这个地方相当的难 需要了解所有硬件的相关功能函数:因为你的程序必须要写给机器看, 当然你就得要参考机器本身的功能,然后针对该功能去撰写程序码。例如,你要让DVD影片能够放映, 那就得要参考DVD光驱的硬件信息才行。万一你的系统有比较冷门的硬件,光是参考技术手册可能会昏倒~ 程序不具有可携性:每个CPU都有独特的微指令集,同样的,每个硬件都有其功能函数。 因此,你为A计算机写的程序,理论上是没有办法在B计算机上面运作的!而且程序码的修改非常困难! 因为是机器码,并不是人类看的懂得程序语言啊! 程序具有专一性:因为这样的程序必须要针对硬件功能函数来撰写, 如果已经开发了一支浏览器程序,想要再开发档案管理程序时,还是得从头再参考硬件的功能函数来继续撰写, 每天都在和『硬件』挑战! 所以不难看出,直接使用机器语言是非常有难度的一个事情

14-1 进程管理与任务计划

无人久伴 提交于 2019-12-02 11:38:46
进程管理与任务计划 系统管理工具 进程的分类: CPU-Bound:CPU密集型,非交互 IO-Bound:IO密集型,交互 Linux系统状态的查看及管理工具:pstree, ps, pidof, pgrep, top, htop, glance, pmap, vmstat, dstat, kill, pkill, job, bg, fg, nohup pstree命令: pstree display a tree of processes ps: process state ps report a snapshot of the current processes Linux系统各进程的相关信息均保存在/proc/PID目录下的各文件中 查看进程ps ps [OPTION]... 支持三种选项: UNIX选项 如-A -e BSD选项 如a GNU选项 如--help 选项:默认显示当前终端中的进程 a 选项包括所有终端中的进程 x 选项包括不链接终端的进程 u 选项显示进程所有者的信息 f 选项显示进程树,相当于 --forest k|--sort 属性 对属性排序,属性前加- 表示倒序 o 属性… 选项显示定制的信息 pid、cmd、%cpu、%mem L 显示支持的属性列表 ps常见选项: -C cmdlist 指定命令,多个命令用,分隔 -L 显示线程 -e

线程池线程数目的确定

雨燕双飞 提交于 2019-12-02 11:26:03
在上一篇文章 《java线程的创建(重点:线程池的使用,线程池不允许使用Executors创建)》 中有关线程池的配置中, public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue, RejectedExecutionHandler handler) { ...... } 缓冲队列queue和异常处理策略handler已经说明,但还有两个重要的参数设置: 核心线程数corePoolSize,最大线程数maximumPoolSize 。所以线程数的确定也很重要,下面是我查阅资料和自己理解的结果 线程和哪些因素有关? 1. CPU 在最开始介绍多线程 《多线程的由浅及深》 时,介绍到 线程共享进程的上下文环境,为更细粒度的CPU时间段 。所以线程数的确定和CPU有关。至于CPU的核数和线程数的关系,可以查看这篇文章: CPU的核心数、线程数的关系和区别 。(多线程实际上是计算机多种资源的并行运用,跟CPU有几个核心是没什么关系的) 2. IO IO分为磁盘IO和网络IO。影响磁盘的关键因数是磁盘服务时间,即磁盘完成一个I/O请求所花费的时间,它由寻道时间

Docker run 命令参数及使用

怎甘沉沦 提交于 2019-12-02 11:16:15
Docker run 命令参数及使用 Docker run :创建一个新的容器并运行一个命令 语法 docker run [OPTIONS] IMAGE [COMMAND] [ARG...] OPTIONS说明: 01.[root@www ~]# docker run --help 02. 03.Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 04. 05.Run a command in a new container 06. 07. -a, --attach=[] Attach to STDIN, STDOUT or STDERR 08. --add-host=[] Add a custom host-to-IP mapping (host:ip) 09. --blkio-weight=0 Block IO (relative weight), between 10 and 1000 10. --cpu-shares=0 CPU shares (relative weight) 11. --cap-add=[] Add Linux capabilities 12. --cap-drop=[] Drop Linux capabilities 13. --cgroup-parent= Optional parent

Go pprof性能调优

て烟熏妆下的殇ゞ 提交于 2019-12-02 11:00:14
Go性能调优 在计算机性能调试领域里,profiling 是指对应用程序的画像,画像就是应用程序使用 CPU 和内存的情况。 Go语言是一个对性能特别看重的语言,因此语言中自带了 profiling 的库,这篇文章就要讲解怎么在 golang 中做 profiling。 Go性能优化 Go语言项目中的性能优化主要有以下几个方面: CPU profile:报告程序的 CPU 使用情况,按照一定频率去采集应用程序在 CPU 和寄存器上面的数据 Memory Profile(Heap Profile):报告程序的内存使用情况 Block Profiling:报告 goroutines 不在运行状态的情况,可以用来分析和查找死锁等性能瓶颈 Goroutine Profiling:报告 goroutines 的使用情况,有哪些 goroutine,它们的调用关系是怎样的 采集性能数据 Go语言内置了获取程序的运行数据的工具,包括以下两个标准库: runtime/pprof :采集工具型应用运行数据进行分析 net/http/pprof :采集服务型应用运行时数据进行分析 pprof开启后,每隔一段时间(10ms)就会收集下当前的堆栈信息,获取格格函数占用的CPU以及内存资源;最后通过对这些采样数据进行分析,形成一个性能分析报告。 注意,我们只应该在性能测试的时候才在代码中引入pprof。

操作系统第五章

北战南征 提交于 2019-12-02 06:51:05
输入输出设备分为块设备(硬盘)和字符设备(鼠标,键盘) 硬盘的输入输出以磁盘块(扇区)为单位 鼠标键盘以字符为单位,通过中断机制输入 ----------------------------------------------------------------------------------------------------------------------------------------------- IO设备由 机械部件和电子部件 两部分组成,电子部件就是电路板,也就是IO控制器。IO控制器作为CPU控制IO设备机械部件的中介。它含有控制寄存器(存放CPU命令的参数),状态寄存器(设备是否能进行读写操作),数据寄存器(数据中转站)。由于IO控制器中含有多个寄存器,当CPU发出命令后,IO控制器要进行地址转换(由IO控制器的IO逻辑部分完成),找到对应的寄存器。 IO控制器由三部分组成,分别为 CPU与控制器的接口,IO逻辑,以及控制器与设备的接口 CPU与控制器的接口: 数据寄存器,状态寄存器,控制寄存器位于这里 IO逻辑: CPU 通过控制线告诉IO逻辑指令类型,通过地址线告诉IO逻辑要操作的设备地址,IO逻辑通过访问控制寄存器和状态寄存器得出指令。如果是输出指令的话,IO逻辑将数据寄存器中的数据 转移到 控制器与设备的接口。 控制器与设备的接口:输出命令的话

register

*爱你&永不变心* 提交于 2019-12-02 06:39:52
一般情况下,变量的值是存储在内存中的,CPU 每次使用数据都要从内存中读取。如果有一些变量使用非常频繁,从内存中读取就会消耗很多时间,例如 for 循环中的增量控制: int i; for(i=0; i<1000; i++){ // Some Code } 执行这段代码,CPU 为了获得 i,会读取 1000 次内存。 为了解决这个问题,可以将使用频繁的变量放在CPU的通用寄存器中,这样使用该变量时就不必访问内存,直接从寄存器中读取,大大提高程序的运行效率。 寄存器、缓存、内存 为了加深对 register 变量的理解,这里有必要讲一下CPU寄存器。 按照与CPU的远近来分,离CPU最近的是寄存器,然后是缓存,最后是内存。 寄存器是最贴近CPU的,而且CPU只在寄存器中进行存取。寄存的意思是暂时存放数据,不用每次都从内存中取,它是一个临时的存放数据的空间。 而寄存器的数据又来源于内存,于是 CPU <-- 寄存器 <-- 内存,这就是它们之间的信息交换。 那么为什么还需要缓存呢?因为如果频繁地操作内存中同一地址上的数据会影响速度,于是就在寄存器和内存之间设置一个缓存,把使用频繁的数据暂时保存到缓存,如果寄存器需要读取内存中同一地址上的数据,就不用大老远地再去访问内存,直接从缓存中读取即可。 缓存的速度远高于内存,价格也是如此。 注意:缓存的容量是有限的

MySQL 性能优化之骨灰级,高阶神技

我的梦境 提交于 2019-12-02 06:12:11
作者 | 惨绿少年 链接 | https://clsn.io/clsn/lx287.html 一、前言 MySQL调优对于很多程序员而言,都是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思路不清晰。在进行MySQL的优化之前必须要了解的就是MySQL的查询过程,很多的查询优化工作实际上就是遵循一些原则让MySQL的优化器能够按照预想的合理方式运行而已。 今天给大家讲解MySQL的优化实战,助你高薪之路顺畅! 图片描述(最多50字) 二、优化的哲学 注意:优化有风险,涉足需谨慎! 1、优化可能带来的问题 优化不总是对一个单纯的环境进行,还很可能是一个复杂的已投产的系统。 优化手段本来就有很大的风险,只不过你没能力意识到和预见到! 任何的技术可以解决一个问题,但必然存在带来一个问题的风险! 对于优化来说解决问题而带来的问题,控制在可接受的范围内才是有成果。 保持现状或出现更差的情况都是失败! 2、优化的需求 稳定性和业务可持续性,通常比性能更重要! 优化不可避免涉及到变更,变更就有风险! 优化使性能变好,维持和变差是等概率事件! 切记优化,应该是各部门协同,共同参与的工作,任何单一部门都不能对数据库进行优化! 所以优化工作,是由业务需要驱使的!!! 3、优化由谁参与 在进行数据库优化时,应由数据库管理员、业务部门代表、应用程序架构师、应用程序设计人员

(转)三大WEB服务器对比分析(apache ,lighttpd,nginx)

前提是你 提交于 2019-12-02 05:49:23
一.软件介绍 (apache lighttpd nginx) 1. lighttpd Lighttpd 是一个具有非常低的内存开销, cpu 占用率低,效能好,以及丰富的模块等特点。 lighttpd 是众多 OpenSource 轻量级的 web server 中较为优秀的一个。支持 FastCGI, CGI, Auth, 输出压缩 (output compress), URL 重写 , Alias 等重要功能。 Lighttpd 使用 fastcgi 方式运行 php, 它会使用很少的 PHP 进程响应很大的并发量。 Fastcgi 的优点在于: · 从稳定性上看 , fastcgi 是以独立的进程池运行来 cgi, 单独一个进程死掉 , 系统可以很轻易的丢弃 , 然后重新分配新的进程来运行逻辑 . · 从安全性上看 , fastcgi 和宿主的 server 完全独立 , fastcgi 怎么 down 也不会把 server 搞垮 , · 从性能上看 , fastcgi 把动态逻辑的处理从 server 中分离出来 , 大负荷的 IO 处理还是留给宿主 server, 这样宿主 server 可以一心一意作 IO, 对于一个普通的动态网页来说 , 逻辑处理可能只有一小部分 , 大量的图片等静态 IO 处理完全不需要逻辑程序的参与 ( 注 1) · 从扩展性上讲 ,

CentOS 6.5中安装使用dstat资源统计工具

浪尽此生 提交于 2019-12-02 05:40:53
1 dstat 工具的使用 1.1 什么是 dstat 官方定义: 多功能系统资源统计生成工具 ( versatile tool for generating system resource statistics), 可提供包含 top、free、iostat、ifstat、vmstat等多个工具的功能, 统计结果还可以保存到 csv 文件或数据库中. 1.2 dstat 的基本使用 1.2.1 dstat 的默认选项 默认会收集 ` -cpu-、-disk-、-net-、-paging-、-system- 的数据, 一秒钟收集一次. 默认设置等同于: dstat -cdngy 1 或 dstat -a 1 . 1.2.2 dstat的常用选项 使用 dstat -h 查看全部选项, 这里简单介绍常用选项: # 直接跟数字x, 表示x秒收集一次数据, 默认为一秒 -c, --cpu # 统计CPU状态, 包括 user, system, idle(空闲等待时间百分比), wait(等待磁盘IO)等 -d, --disk # 统计磁盘读写状态 -D total,sda # 统计指定磁盘或汇总信息 -m, --mem # 统计系统物理内存使用情况, 包括used, buffers, cache, free -l, --load # 统计系统负载情况, 包括1分钟、5分钟、15分钟平均值