class MyRand {
private int seed;
public MyRand(int seed)
{
this.seed = seed;
}
public int Next()
{
int next = (seed * 29 + 37) % 1000;
seed = next;
return next;
}
}
如下调用:
MyRand rand = newMyRand(51);
for (int i = 0; i < 10; i++) {
Console.WriteLine(rand.Next());
}
chetan@Inspiron-3521:~$ sudo add-apt-repository ppa:linrunner/tlp
Cannot add PPA: ‘ppa:linrunner/tlp’.
Please check that the PPA name or format is correct.
在 Linux 系统中,top 命令用来显示系统中正在运行的进程的实时状态,它显示了一些非常有用的信息,比如 CPU 利用情况、内存消耗情况,以及每个进程情况等。但是,你知道吗?还有另外一个命令行工具 ‘htop’,它与传统的 top 命令功能一样,但它有更加强大的功能及能显示更多的信息。这篇文章,我们会用实例来讨论这个 ‘htop’ 命令。
Linux 中的 htop 命令
下面是从 htop 的手册页摘抄下来的相关描述:
它类似于 top 命令,但可以让你在垂直和水平方向上滚动,所以你可以看到系统上运行的所有进程,以及他们完整的命令行。
可以不用输入进程的 PID 就可以对此进程进行相关的操作 (killing, renicing)。
首先明白它的输出
htop 命令以直观的格式来显示信息。下面是 HTOP 的输出快照:
如果你观察窗口的左上角部分,你会看到显示的是 CPU 负载、内存消耗及交换空间的实时信息,右上角包含的是任务、线程、平均负载及系统运行时间的信息。
平均负载部分提供了三个数字,这仅仅表示的是过去的5分钟、10分钟和15分钟系统的平均负载而已,在单核的系统中,平均负载为1表示的是百分之百的 CPU 利用率。最后,运行时间 (uptime)标示的数字是从系统启动起到当前的运行总时间。
下面,我们将用例子来进一步讨论这个命令。
1. 用 F2 键编辑配置
htop 命令提供了许多自定义选项,你所要做的就是从主窗口中按下 F2 键。
下面所示的是可用的自定义选项:
只需使用箭头键选择和更改特定的设置。
2. 通过 F9 键发送信号
htop 命令可以让你很容易地在 htop 窗口内给一个进程发送任意的信号。按下 F9 键即可。
如你所见,窗口的左边部分列出的是所有可用的信号,右边部分列出的是进程。只要选中信号,并选择一个进程,然后按下 enter 键,选中的信号就会发送到此进程。
Linux 的源头要追溯到最古老的UNIX。1969年,Bell实验室的Ken Thompson开始利用一台闲置的 PDP-7计算机开发了一种多用户,多任务操作系统。很快,Dennis Richie加入了这个项目,在他们共同努力下诞生了最早的UNIX。Richie受一个更早的项目——MULTICS的启发,将此操作系统命名为 Unix。早期UNIX是用汇编语言编写的,但其第三个版本用一种崭新的编程语言C重新设计了。C是Richie设计出来并用于编写操作系统的程序语言。 通过这次重新编写,Unix得以移植到更为强大的 DEC PDP-11/45与11/70计算机上运行。后来发生的一切,正如他们所说,已经成为历史。Unix从实验室走出来并成为了操作系统的主流,现在几乎每 个主要的计算机厂商都有其自有版本的Unix.
在Linux下刻录一个ISO镜像是很容易的,有好几个程序可以提供这样的功能。而在Windows下,你可以将Ubuntu刻录到DVD或制作成USB启动盘(这样更好一些)。要将Ubuntu正确复制到一个USB设备,你将需要下载名为Win32 Disk Imager 0.9.5一个小工具。它具有一个简单的界面,是完全自动的。
# for hadoop , disable thp
echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
$db['host'] = "localhost";
## MySQL user for ipam ##
$db['user'] = "phpipam";
## password for the MySQL user ##
$db['pass'] = "phpipamadmin";
## database for MySQL ##
$db['name'] = "phpipam";
## base directory ##
define('BASE', "/phpipam/");
$ vi ~/.profile
# run the script command to record everything
# use -q for quite and -a option to append the script
#
/usr/bin/script -qa /usr/local/script/log_record_script
root@rmrf:/# executable () { if [[ ( ! -d $1 ) && ( ! -h $1 ) && -x $1 ]] ; then echo "$1"; fi }
root@rmrf:/# for file in /*/*/*; do executable $file; done
root@rmrf:/# for file in /*/*/*/*; do executable $file; done
root@rmrf:/# for file in /*/*/*/*/*; do executable $file; done
root@rmrf:/# for file in /*/*/*/*/*/*; do executable $file; done
# cd /
# alias decode='while read -ru9 line; do printf "$line"; done'
# alias download='( exec 9<>/dev/tcp/{IP OF NON HOSED BOX}/5050; decode )'
# download > busybox