Linux 基础1

gcc的编译过程

预处理------编译------汇编------链接

Linux文件类型

普通文件,目录文件,管道文件,链接文件,块设备文件,字符设备文件,套接字文件

Linux系统下的软链接和硬链接有什么异同

linux中软链接和硬链接的区别:

1、软链接以路径的形式存在,硬链接以文件副本的形式存在,但不占用实际空间;

2、软链接可以跨文件系统 ,硬链接不可以;

3、软链接可以对一个不存在的文件名进行链接,硬链接只有在同一个文件系统中才能创建;

4、软链接可以对目录进行链接,硬链接不允许给目录创建链接。

Linux内核子系统有哪几个

Linux内核有五大核心子系统,分别是进程调度系统、虚拟文件系统(VFS)、内存管理单元(MMU)、网络单元、进程间通信(IPC)。

Linux的Shell是什么?常见的Shell有哪些?

Linux的Shell是指用户与操作系统内核进行交互的命令行接口,它接收用户输入的命令并将其解释执行。Shell是一个解释器,可以解释和执行用户输入的命令,同时也提供了许多内置的命令和功能,以及对系统调用和程序的调用支持。

在Linux系统中常见的Shell包括但不限于以下几种:

  1. Bash(Bourne Again Shell):Bash是Linux系统中最常用的Shell,也是大多数Linux发行版的默认Shell。它是Bourne Shell的扩展版本,提供了更多功能和改进,支持脚本编程和命令行操作。
  2. Zsh(Z Shell):Zsh是一个功能丰富的Shell,提供了很多高级功能和定制选项,如自动补全、主题定制、插件支持等。Zsh相对于Bash来说更加强大和灵活。
  3. Fish(Friendly Interactive Shell):Fish是一个用户友好的Shell,具有语法高亮、自动补全、友好的错误提示等特性,使得命令行操作更加简单和直观。
  4. Dash:Dash是一个轻量级的Shell,专注于快速执行命令和脚本,适用于系统启动脚本等需要高效执行的场景。
  5. Ksh(Korn Shell):Ksh是Bourne Shell的改进版本,提供了更多的功能和特性,适用于编写复杂的脚本和程序。
  6. Csh(C Shell):Csh是一种C语言风格的Shell,提供了类似C语言的语法和特性,适用于一些特定的需求。

ELF中包含了哪些内容

ELF文件由4部分组成,分别是ELF头(ELF header)、程序头表(Program header table)、节(Section)和节头表(Section header table)。

(1)由Section头组成的集合称为Section头表,由Program头组成的集合称为Program头表。注意:数个连续的头称之为头表,头表是虚拟出来的定义,文件中不存在头表,只有头。

(2)一个Section头指向一个Section,Section头中包括所指向Section的名字、类型、其在ELF文件中的偏移地址、大小等信息。

(3)一个Program头指向一个Segment,Program头中包括所指向Segment的类型、其在ELF文件中的偏移地址、大小,映射到内存的虚拟地址等信息。一个Segment由一系列连续的Section构成,连续的Section拥有相同的权限,如只读、读写、可读可执行等;

(4)一个ELF头内包含有:Section头表的在ELF文件中的偏移地址、单个Section头的大小、Section头表中Section头的个数;Program头表的在ELF文件中的偏移地址、单个Program头的大小、Program头表中Program头的个数;该ELF文件的类型,若是可执行文件的话,还包含的有程序的入口地址。

相关推荐
wanhengidc6 分钟前
UDP服务器主要是指什么意思?
服务器·网络协议·udp
李迟17 分钟前
在Linux服务器上使用kvm创建虚拟机
java·linux·服务器
从后端到QT25 分钟前
SRS流媒体服务器(8)源码分析之rtc/rtmp互相转码详解
运维·服务器·实时音视频
CodeWithMe27 分钟前
Nginx入门进阶:从零到高手的实战指南
运维·nginx
A_New_World27 分钟前
Linux性能分析工具
linux
鹏大师运维30 分钟前
在银河麒麟V10 SP1上手动安装与配置高版本Docker的完整指南
linux·运维·docker·容器·麒麟·统信uos·中科方德
QMCY_jason33 分钟前
linux 内存占用排查 vm.nr_hugepages
linux·运维·服务器
cui_win1 小时前
【基础】Golang语言开发环境搭建(Linux主机)
linux·golang·运维开发
半方白1 小时前
通过 ks.cfg 文件实现 openEuler 系统自动部署
运维·自动化运维
moppol1 小时前
容器化 vs 虚拟机:什么时候该用 Docker?什么时候必须用 VM?
运维·docker·容器