Linux I/O 调度器是Linux内核中的一个组成部分,用户可以通过调整这个调度器来优化系统性能,本篇文章重点为大家讲解一下如何通过挑中Linux I/O 调度器来优化系统性能。
Linux I/O 调度器控制内核提交读写请求给磁盘的方式。自从 2.6 内核以来,管理员已经能够更改这个调度器,所以他们可以自定义他们的平台以完全适合他们的需要。
有三个调度器可供选择,每个调度器都有其优点。这些调度器是:
当你想要让 Linux 机器发挥最佳性能时,这可能是你所要做的事情之一。幸运的是,更改 I/O 调度器非常简单。让我告诉你怎么做。
找出你有的调度器
你需要做的第一件事是找出哪个调度器正在处理你系统上的 I/O。这是从命令行完成的,你必须知道磁盘的名称。为简单起见,我假设磁盘是 sda。据此信息,打开终端窗口并输入以下命令:
cat/sys/block/sda/queue/scheduler
该命令的结果将显示当前运行的调度程序(下图)。
更改 Linux I/O 调度器来改善 服务器 性能更改 Linux I/O 调度器来改善服务器性能
Elementary OS Loki 运行 deadline 调度器。
更改你的调度器
你可以通过两种方式更改你的调度器:即时或永久。如果你即时更改调度器,它会在重启后恢复到之前的默认调度器。你可能希望首先进行即时更改,以查看哪个调度器能为你的需求带来最佳性能。
说到你要即时改到 noop 调度器。 为此,输入以下命令:
sudonoop>/sys/block/hda/queue/scheduler
你可以将 noop 更改为 cfq 或deadline 。
此更改可以在不重新启动计算机的情况下生效。 一旦更改,I/O 调度器将会切换,(希望)你能看到性能提高(再说一次,根据你的需要而定)。

如果要将调度器更改为永久,则必须在 GRUB 配置文件中执行此操作。 为此,请输入 sudo nano /etc/default/grub ,然后修改下面的行:
GRUB_CMDLINE_LINUX_DEFAULT=
到
GRUB_CMDLINE_LINUX_DEFAULT=
同样,你可以改变 noop 为任何你需要的调度器。如果你用的是即时修改,则不必重新启动以使新调度器生效。
这些就是修改调度器的方法了。
做出明智的选择
你应该做研究,找出什么调度器最适合你的特殊情况。要了解每个调度器的更多信息,请查看这些 Wiki 页面:CFS、Noop和 Deadline。
linux下怎样将线程分配到指定cpu
大概的介绍一下Linux 的指定CPU运行,包括进程和线程。
linux下的top命令是可以查看当前的cpu的运行状态,按1可以查看系统有多少个CPU,以及每个CPU的运行状态。
可是如何查看线程的CPU呢?top -Hp pid,pid就是你当前程序的进程号,如果是多线程的话,是可以查看进程内所有线程的CPU和内存使用情况。
pstree可以查看主次线程,同样的pstree -p pid。
可以查看进程的线程情况。
taskset这个其实才是重点,可以查看以及设置当前进程或线程运行的CPU(设置亲和力)。
taskset -pc pid,查看当前进程的cpu,当然有的时候不只是一个,taskset -pc cpu_num pid ,cpu_num就是设置的cpu。
这样的话基本的命令和操作其实大家都知道了,接下来就是在代码中完成这些操作,并通过命令去验证代码的成功率。
进程制定CPU运行:[cpp] view plain copy#include
top命令中哪个参数是查看正在运行进程数
Runningtotal 进程总数running 正在运行的进程数sleeping 睡眠的进程数stopped 停止的进程数zombie 僵尸进程数Cpu(s): 0.3% us 用户空间占用CPU百分比1.0% sy 内核空间占用CPU百分比0.0% ni 用户进程空间内改变过优先级的进程占用CPU百分比98.7% id 空闲CPU百分比0.0% wa 等待输入输出的CPU时间百分比0.0%hi:硬件CPU中断占用百分比0.0%si:软中断占用百分比0.0%st:虚拟机占用百分比
Linux中显示自己登录的用户用那个命令?
login name:登录用户名;terminal line:使用终端设备;login time:登录到系统的时间。 下面对who命令的常用参数进行说明。 -m它的效果同who am i显示出自己在系统中的用户名,登录终端,登录时间-q只显示用户的登录帐号和登录用户的数量-s忽略,它同于who-r可以查看当前系统的运行级别 run-level 3 Apr 21 09:37 last=S-H,--heading 显示一行列标题。 常用的标题如表4-2所示。 三, whoami 命令只显示出自己在系统中的用户名四, who am i 命令显示出自己在系统中的用户名,登录终端,登录时间 可以查看自己登录到系统中的用户名,它同logname一样。 五, logname 命令可以显示自己登录到系统中的用户名六, last 命令可以查看上次自己登录的时间,当然root可以查看其他用户登录的情况。 last -n user 可以看user前n次登录的情况七, tty命令 可以使用tty来报告所连接的设备或终端
发表评论