操作系统杂项(一)

目录

一、Linux系统中查看进程、内存的指令,tar解压文件的参数

二、Linux文件权限如何修改

 三、Linux常用的命令

四、如何以root权限运行某个程序

五、简述软链接和硬链接的区别

六、静态库和动态库如何制作及使用,区别是什么


一、Linux系统中查看进程、内存的指令,tar解压文件的参数

        1、查看进程运行状态的指令:ps命令。

        “ps -aux | grep PID”,用来查看某PID进程状态。

        2、查看内容使用情况的指令:free命令。

        “free -m”,查看内存使用情况。

        3、tar解压文件的参数:

五个命令中必选一个:

        -c:建立压缩档案

        -x:解压

        -t:查看内容

        -r:想压缩归档文件末尾追加文件

        -u:更新原压缩包中的文件

这几个参数是可选的:

        -z:有gzip属性的

        -j:有bz2属性的

        -z:有compress属性的

        -v:显示所有过程

        -o:蒋文件解开到标准输出

二、Linux文件权限如何修改

        Linux文件的基本权限有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限。文件的权限字符为 -rwxrwxrwx时,这九个权限是三个一组,我们可以使用数字来代表各个权限。各权限的分数对照如下:

r(read)w(write)x(execute)
421

       每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的。

        例如当权限为:-rwxrwx---,则分数为:

        owner = rwx = 4+2+1=7

        group = rwx = 4+2+1=7

        others = --- = 0+0+0=0

        所以我们设定权限的变更时,该文件的权限数字就是770,变更权限的命令是chmod,用法如下:

[root@wsx ~]# chmod [-R] xyz 文件或目录

选项与参数:

xyz:数字类型的权限属性,为rwx属性数值的相加。

-R:进行递归(recursive)的持续变更,连同次目录下的所有文件都会变更。

 

# chmod 770 a.out   //修改a.out文件的权限为770

 三、Linux常用的命令

        1、cd:用于切换当前目录。

        2、ls:用于查看当前文件和目录。

        3、grep:该命令常用于分析一行的信息,若当中有我们所需要的信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工。

        4、cp:用于复制。

        5、mv:用于移动文件或文件夹。

        6、rm:用于删除文件或文件夹。

        7、ps:用于查看进程情况。

        8、kill:用于向进程发送终止信号。

        9、tar:用于对文件进行打包,调用gzip或bzip对文件进行压缩或解压。

        10、cat:查看文件内容,与less、more功能相似。

        11、top:用于查看系统的信息,如进程、CPU占有率、内存信息等。

        12、pwf:用于显示当前工作目录。

四、如何以root权限运行某个程序

        sudo chown root app(文件名)

        sudo chmod u+s app(文件名)

输入上面两条指令即可。

五、简述软链接和硬链接的区别

        1、定义不同

        软链接又叫符号链接,这个文件包含了另一个文件的路径名。可以是任意文件或目录,可以链接不同文件系统的文件。

        硬链接是一个文件的一个或多个文件名。把文件名和计算机文件系统使用的节点号链接起来,因此我们可以用多个文件名与同一个文件进行链接,这些文件名可以在同一目录或不同目录。

        2、限制不同

        软链接可以对不存在的文件或目录创建软链接,可交叉文件系统。

        硬链接只能对已存在的文件进行创建,不能交叉文件系统进行硬链接的创建。

        3、创建方式不同

        软链接可以对文件或目录进行创建。

        硬链接不可以对目录进行创建,只可对文件创建。

        4、影响不同

         删除软链接不影响被指向的文件,但若被指向的文件被删除,则相关软链接被称为死链接(即dangling link,若被指向路径文件被重新创建,死链接可恢复为正常的软链接)。

        删除硬链接文件并不影响其他有相同inode号的文件。

六、静态库和动态库如何制作及使用,区别是什么

        1、静态库

        (1)制作

gcc  hello.c  -c  //这样就生成hello.o目标文件


ar rcs libhello.a  hello.o  //生成libhello.a静态库

        (2)使用

gcc main.c -lhello -o staticLibrary   //main.c和hello静态库链接,生成staticLibrary执行文件

/*
main.c   指主函数
-lhello  生成的.a文件砍头去尾(lib去掉,.a去掉)前面加-l
-L       告诉gcc编译器先从-L指定的路径去找静态库,默认是从/usr/lib/或者/usr/local/lib去找
./       指当前路径
staticLibrary   最后生成的文件名(自己命名)
*/

        2、动态库

        (1)制作

gcc  -shared  -fPIC  hello.c  -o  libhello.so

-shared   指定生成动态库
-fPIC     fPIC选项作用于编译阶段,在生成目标文件时就得使用该选项,以生成位置无关的代码

        (2)使用

gcc main.c -lhello  -L./ -o dynamicDepot

/*
main.c    指main主函数
-lhello   生成的.so文件砍头去尾(lib去掉,.so去掉)前面加-l
-L        告诉gcc编译器先从-L指定的路径去找静态库,默认是从/usr/lib/或者/usr/local/lib去找
./        指当前路径
dynamicDepot    最后要生成的文件名(自己命名)
*/

        3、区别

        (1)静态库代码装载速度快,执行速度略比动态库快。

        (2)动态库更加节省内存,可执行文件体积比静态库小很多。

        (3)静态库是在编译时加载,动态库是在运行时加载。

        (4)生成的静态库链接,Windows下以.lib为后缀,Linux下以.a为后缀;生成的动态库链接,Windows下以.dll为后缀,Linux下以.so为后缀。

  • 21
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猿核试Bug愁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值