信息安全系统设计与实现第一周:《Unix/Linux系统编程》第一、二章学习笔记
2021/9/13 7:09:05
本文主要是介绍信息安全系统设计与实现第一周:《Unix/Linux系统编程》第一、二章学习笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第一章 引言
1.Unix的历史介绍与Linux历史版本介绍
2.VMware虚拟机的安装
3.Linux与Ubuntu Linux的使用
安装Linux操作系统
Linux文件系统
Linux常用命令
Linux启动过程详解
Linux基本命令实践
第二章 编程背景
1.基于GUI的文本编辑器
2.程序开发的步骤
GCC
使用gcc将创建好的源文件转换为二进制可执行文件(a.out文件)
问题:gcc是什么?
gcc是一个程序 主要包含三个步骤:C源文件(.c)通过第一步编译器转换为汇编代码文件(.s),再通过第二步汇编器生成目标代码(.o),最后由链接器生成a.out。
参考到的博文
问题:a.out文件的内容?
- 文件头:包含文件加载信息和大小
- 代码段:包含程序的可执行代码,调用main函数
- 数据段:包含初始化全局变量和初始化静态数据
- 符号段(可选)
静态与动态链接
相比于静态链接将所有必要的库函数代码和数据放入a.out文件中,动态链接的有点有:
- 可减小每个a.out文件的大小
- 许多执行程序可在内存中共享相同的库函数(动态链接库DLL)
- 修改库函数不需要重新编译源文件
程序执行
程序终止
3.C语言函数调用惯例与运行时堆栈的使用
参数传递、局部变量与栈帧
结构体
链表
树与二叉树
使用GDB工具调试C语言程序
该部分我个人阅读后感觉和大二上学期学习的数据结构有较强关联,知识要重在复习与应用。
这篇关于信息安全系统设计与实现第一周:《Unix/Linux系统编程》第一、二章学习笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-18git仓库有更新,jenkins 自动触发拉代码怎么配置的?-icode9专业技术文章分享
- 2024-12-18Jenkins webhook 方式怎么配置指定的分支?-icode9专业技术文章分享
- 2024-12-13Linux C++项目实战入门教程
- 2024-12-13Linux C++编程项目实战入门教程
- 2024-12-11Linux部署Scrapy教程:新手入门指南
- 2024-12-11怎么将在本地创建的 Maven 仓库迁移到 Linux 服务器上?-icode9专业技术文章分享
- 2024-12-10Linux常用命令
- 2024-12-06谁看谁服! Linux 创始人对于进程和线程的理解是…
- 2024-12-04操作系统教程:新手入门及初级技巧详解
- 2024-12-04操作系统入门:新手必学指南