1. Linux下查看进程命令:
$ ps显示4项:PID(进程ID), TTY(终端名), TIME(进程执行时间), COMMAND(该进程的命令行输入)。
$ps u 显示11项:除了以上4个还包括USER(用户名)、%CPU(进程占用CPU时间和总时间的百分比)、%MEM(进程占用的内存和总内存的百分比)、USZ、RSS、STAT(进程的状态)、START,看到所有控制终端的进程,无法看到没有控制终端的进程。若显示COMMAND为-bash,意味着该进程是用户登录的shell,对一个用户来说带-的进程只有一个。
$ps x 显示5项:多了STAT,显示所有控制终端和没有控制终端的进程。
$ps aux 显示11项:显示当前系统所有用户的所有进程的最详细情况。
$ top 与ps命令基本作用相同,显示系统当前的进程和其他状况,但top是动态显示过程,可以通过用户按键来不断刷新当前状态。通过内存使用和执行时间对任务进行排序。
$ top [-] [d delay] [q] [c] [s] [S] 默认5s更新一次。
d指定每两次屏幕信息刷新之间的时间间隔;
q使top没有任何延迟的进行刷新;
S指定累计模式;
s使top命令在安全模式中运行,去除交互命令带来的潜在危险;
i使top命令不显示任何闲置或者僵死进程;
c显示整个命令行而不只是命令名。
第一行的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载。第二行为进程情况,依次为进程总数、休眠进程数、运行进程数、僵死进程数、终止进程数。第三行为CPU状态,依次为用户占用、系统占用、优先进程占用、闲置进程占用。第四行为内存状态,依次为平均可用内存、已用内存、空闲内存、共享内存、缓存使用内存。第五行为交换状态,依次为平均可用交换容量、已用容量、闲置容量、高速缓存容量。然后下面就是和ps相仿的各进程情况列表了。
2. Linux下在后台开始程序:http://hi.baidu.com/zcdht/item/5605f8ab11aa9a7e6dd4556c
nohup/setsid 无疑是临时需要时最方便的方法,disown 能帮助我们来事后补救当前已经在运行了的作业,而 screen 则是在大批量操作时不二的选择。
3. .cpp源代码、.o(中间文件)、可执行文件之间的关系:
源文件: .cpp源代码文件中包含着程序猿使用任何语言编写的代码;
源文件就是存放程序代码的文件。通常我们编辑代码的文件就是源文件。
源代码是相对目标代码和可执行代码而言的。
源代码就是用汇编语言和高级语言写出来的地代码。
在网页上右键鼠标,选择查看源文件.出来一个记事本,里面的内容就是此网页的源代码.
目标文件:.o目标文件包含着机器语言代码,它并不需要是完整的程序代码;
目标代码是指源代码经过编译程序产生的能被cpu直接识别二进制代码。
目标文件由编译器生成.具体的生成方法在不同的开发环境上是不同的.
gcc的例子:
gcc -o target_file test.c
编译test.c生成可执行文件target_file
gcc -c test.c
编译test.c ,生成目标文件test.o,但不进行link.
可执行文件:可执行文件包含着组成可执行程序的全部机器语言代码。
可执行代码就是将目标代码连接后形成的可执行文件,当然也是二进制的。
连接程序系统库文件连接就生成可执行文件。
例如:*.obj是程序编译之后生成的目标文件,连接程序再将这个文件与系统库文件连接就生成可执行文件
4. 关于全局变量和局部变量:当全局变量与局部变量同名时,可以通过编译,此时局部变量会屏蔽全局变量,若要使用全局变量需用 :: 。
http://www.cnblogs.com/chenglei/archive/2009/09/06/1561367.html
5. static:
http://blog.csdn.net/zhyz_zheng/article/details/7998983
6.main函数中的两个参数:
int main(int argc, char *args[ ]):argc标示了参数的个数,char *args[ ]中是具体的参数名。
若编了test.exe 程序,运行时打上test.exe aa bb cc,则这三个附加参数体现为argc =3且 args[0] = "aa", args[1] = "bb", args[2] = "cc".