第1章 引言
教材学习内容总结
第1章主要介绍的是一个关于本书系统编程的综述以及Unix、Linux、虚拟机安装的讲解。
一、系统编程总体介绍
系统编程是学习计算机不可或缺的一部分,通过对该书目录的浏览,不难看出系统编程是一门结合多门知识体系的课程,涉及许多在大一、大二学习的课程,如C语言程序设计、数据结构、信息安全导论等等。在这两年的学习生活中,通过和其他系同学的接触,我们能感受到编程实践能力相对较弱,即将想法付诸实现较困难,我想通过阅读系统编程这本书,能够有效提高自身高级编程所需的背景知识和技能。
二、Unix介绍
Unix是20世纪70年代初出现的一个操作系统,除了作为网络操作系统之外,还可以作为单机操作系统使用。Unix作为一种开发平台和台式操作系统获得了广泛使用,目前主要用于工程应用和科学计算等领域。
Unix版本:
Open Solaris
Oracle Solaris
IBM AIX
HP-UX
UNIX V6
BSD UNIX
Solaris
三、Linux介绍
Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。
Linux版本:
Ubuntu Linux
Linux Mint
基于RPM的Linux
Slackware Linux
四、Unix/Linux命令
第2章 编程背景
教材学习内容总结
第2章主要介绍的是Linux中文本编辑器的使用以及C语言在Linux下的安装、运行和实现
一、Linux中的文本编辑器
1、vim
Vim有三种模式:命令模式、插入模式、末行模式
系统启动时默认是命令模式,输入i或是a切换到插入模式,退出插入模式则需按Esc键。在命令模式下输入;则切换到末行模式。
(1)命令模式
h:左移一个字符
j:下移一个字符
k:上移一个字符
l:右移一个字符
(2)插入模式
i:插入文本
a:追加文本
(3)末行模式
:w:保存文件
:q:退出文件
:wq:保存并且退出
:q!:表示强制退出,刚才做的修改操作不做保存。
2、WYSIWYG
Ctrl+C: 中断程序运行
Ctrl+K: 删除从光标所在位置到行末
Ctrl+Y:
Ctrl+S:
3、gedit
GNOME桌面默认环境默认的文本编辑器
4、emacs
命令行输入 apt-get install emacs进行安装
二、在Linux下使用C语言
安装
三、程序开发
1、程序开发步骤
创建源文件
用gcc把源文件转化成二进制可执行文件(默认的二进制可执行文件名为a.out)
2、a.out文件
文件头:文件加载信息和大小
代码段:程序的可执行代码
数据段:初始化全局变量和静态数据
符号表:非必要,运行调试所需
四、Unix/Linux make工具、makefile
1、makefile格式
目标项
依赖项
规则
五、GDB调试工具
在emacs IDE中使用GDB
创建makefile:
t:t.c
gcc -g -o t t.c
生成一个二进制可执行文件:
gcc -g-o t t.c
预处理
gcc -E xx.c -o xx.i
编译
gcc -S xx.i -o xx.s
汇编
gcc -c xx.s -o xx.o
链接
gcc xx.o -o xx
六、C语言、数据结构相关知识应用
1、结构体和指针
2、链表
3、树和二叉树
问题与解决思路
问题:无法安装emacs
使用书本上的安装代码 sudo apt-get install emacs 显示出错
解决思路:
1、尝试更新软件,然而依然无法安装。
2、尝试卸载后再重装,依然不行。 卸载代码 sudo apt-get remove --auto-remove emacs
3、网上查找相关报错语句的解决方案,但在尝试过后依然报相同错误。
https://blog.csdn.net/qq_16759959/article/details/103370681