Linux基础复习

1、Linux下一切皆文件
-普通文件
d目录文件
p管道文件
c.b设备文件
L链接文件
S套接字文件

2、文件名颜色对应的文件类型
绿色 —— 可执行文件
黑色 —— 普通文件
蓝色 —— 目录
红色 —— 压缩文件
黄色 —— 设备文件
灰色 —— 其他文件
浅蓝色 ——链接文件
红色闪烁——链接文件有问题

3、文件访问权限有3组(每组3位)
这里写图片描述

4、系统运行级别(0~6)
0 关机
1 单用户模式
2 不带网络的多用户模式
3 完整的多用户模式,优先进入文本字符界面
4 保留,用户可以自定义
5 图形界面多用户
6 重启系统

ps:切换系统级别用init命令,runlevel 查看当前系统运行级别

5、文件编译链接过程命令

gcc -c main.c         //编译main.c文件为main.o
gcc -o main main.o    //链接main.o为main
./main                //运行main程序

gcc -o main  main.c     //一步完成编译链接过程

(在bin目录下的ls ps pwd等命令也是程序,且不用加绝对路径,直接运行。
如果把main拷贝到bin目录下,效果等同)

6、makefile的使用

all:main
main:max.o add.o main.o
    gcc -o main.o max.o add.o
main.o:main.c
    gcc -c main.c
max.o:max.c
    gcc -c max.c
add.o:add.c
    gcc -c add.c

clean:
    rm -rf *.o main

每次的空格需要按“Tab”键,而不是“Space”

7、GDB调试
Linux下默认为release版本,不带调试信息
所以需要程序员自己加入调试信息

gcc -o main main.c  **-g**
gdb main          //调试mian

L        //显示代码
b+行号    //下断点
info break   //显示断点
r     //运行程序
p a     //跟踪变量a
s     //进入下一个函数
n      //下一步,单步执行
finish    //跳出函数
q     //退出
bt    //查看函数调用堆栈
delete 1    //删除断点
c      //继续操作(下一个断点处停止)

8、写时拷贝
说到写时拷贝,不得不提fork( )函数
pid_t fork(void)
fork()被调用一次,返回值为两次,父进程返回的是子进程的pid,子进程的返回值为0,子进程是父进程的副本,子进程获得父进程数据空间、堆和栈的副本。子进程也拥有自己的存储空间,父子进程不共享存储空间

写时拷贝:fork并不执行父进程的数据段、栈和堆的完全复制,这些区域由父子进程共享,内核将他们的访问权限改变成只读,如果父子进程中的任一个视图修改这些区域,内核只修改区域的那块内存制作一个副本,再更新页表。

9、ping命令用的什么协议
ICMP(Internet Control Message Protocol)网际控制报文协议,是TCP/IP协议族中的一个子协议

10、常用的熟知端口号

FTP    TELNET   SMTP    DNS    TFTP   HTTP    SNMP   
21      23      25      53      69     80      161
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值