首页 > 其他分享 >20211105李宜时《信息安全系统设计基础》第一周学习总结

20211105李宜时《信息安全系统设计基础》第一周学习总结

时间:2023-09-10 19:22:24浏览次数:47  
标签:printf 文件 20211105 信息安全 gcc 编译 李宜时 test hello

20211105李宜时《信息安全系统设计基础》第一周学习总结

老师好,我针对教科书和云班课上面的知识学习了这门课第一章和第二章的知识

Linux的一些常用的命令

ls:用于列出目录中的文件和子目录。
cd:用于改变当前工作目录。
pwd:显示当前工作目录的路径。
mkdir:创建新的目录。
rmdir:删除空目录。
touch:创建新的空文件或更新已有文件的时间戳。
cp:复制文件或目录。
mv:移动文件或目录,也可用于重命名文件。
rm:删除文件或目录。
cat:显示文件内容,也可用于合并文件。
more/less:逐页显示文件内容。
head/tail:显示文件的开头或结尾部分。
grep:在文件中搜索文本模式。
find:查找文件或目录。
chmod:更改文件或目录的权限。
chown:更改文件或目录的所有者。
ps:显示正在运行的进程。
kill:终止进程。
df:显示磁盘空间使用情况。
du:显示目录的磁盘使用情况。
tar:用于压缩和解压文件。
wget/curl:从网络下载文件。
ssh:通过安全的Shell连接远程主机。
ping:测试与主机的网络连接。
ifconfig/ip:配置网络接口信息。

以下是我在看书的过程中结合实践的笔记和截图

这是我看第二章的书里面觉得的重点。

请添加图片描述

以下是我对书上的一些知识的实践和对gpt的询问来解决我的问题

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

请添加图片描述

以下是我的对几个重点知识的尝试

gcc

  1. 学习编译器gcc
    命令格式:gcc「选项」「文件名」
    -E :仅执行编译预处理
    -S:将c代码转换为汇编代码
    -c:仅执行编译操作,不进行连接操作
    -o:制定生成的输出文件
    -I(i):制定头文件目录
    -l:制定程序要链接的库
    -L:制定库文件所在的目录名
    在这里插入图片描述
    2.这个文件进行试验
    在这里插入图片描述
    (1)gcc -E hello.c -o hello.i
    将.c文件预处理成为.i文件
    在这里插入图片描述
    (2)gcc -S hello.i -o hello.s
    将预处理输出文件i变为s
    在这里插入图片描述
    (3)gcc -c hello.s -o hello.o
    将输出文件,s变为.o
    在这里插入图片描述
    (4)gcc hello.o -o hello
    将输出文件.o连接成最终可以执行的文件hello

在这里插入图片描述
以上的操作可以通过gcc hello.c -o hello

  1. 多个文件编译:
    一起编译:gcc test_a.c test_b.c -o test或gcc *.c -o test
    分别编译各个原文件,在对编译后的输出文件链接:
    gcc -c test_a.c //生成test_a.o
    gcc -c test_b.c //生成test_b.o
    gcc -o test_a.o test_b.o -o test

不同:第一个需要所有文件重新编译
第二个只需要编译修改过的文件

项目的目录结构
Src:存放.c文件
Include:存放.h文件也就是头文件
Bin:存放项目调试之后的可运行文件
Libs:存放动态库和静态库文件
Readme.md:阅读指南文件,包括如何使用这个程序等
Makefile:描述整个工程的编译,链接等功能,自动化
-l 参数:输入gcc*c(一起编译所有.c文件)-o main

静态库和动态库,静态函数库,动态函数库:gcc-c-l|头文件所在路径,生成o文件
输入 ar rcvs。。。生成静态库

Add.c sub.c mul.c div.c

makefile

博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

t :t.c
	gcc -g -o t t.c

请添加图片描述
在这里插入图片描述

gdb

功能,启动程序,并且可以设置运行环境和参数来运行指定程序
让程序在指定断点处停止执行
对程序作出相应调整,纠正错误后继续调试,
注意: 使用-g编译选项的gcc命令来编译元程序
如:gcc -g test.c -o test
通过gbd test来启动gbd
Help(gbd 命令的种类)
Help all(查看所有的命令)
Help (查看某一种类的命令)
Help (查看命令的帮助)
在这里插入图片描述
在这里插入图片描述
请添加图片描述

这个是云班课里面的代码用来调试

#include <stdio. h> int func(int n)
{
int sum=0, i;
for (i=0;i<n; i++)
{ sum+=i;

}
return sum;
}
int main)
{
int i;
long result=0;
for (i=1;1<=100;¡++)
{
result +=i;
printf("result[1-100]=%ld\n" , result);
printf("result[1-2501=%d\n" func (250);
}

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

longjump

#include <stdio.h>
#include <setjmp.h>

jmp_buf env;

void A();
void B();

int main()
{
    int r, a = 100;
    printf("call setjmp to save environment\n");
    if ((r = setjmp(env)) == 0) {
        A();
        printf("normal return\n");
    } else {
        printf("back to main() via long jump, r=%d a=%d\n", r, a);
    }
    return 0;
}

void A()
{
    printf("enter A()\n");
    B();
    printf("exit A()\n");
}

void B()
{
    printf("enter B()\n");
    printf("long jump? (y|n) ");
    if (getchar() == 'y') {
        longjmp(env, 1234);
    }
    printf("exit B()\n");
}

苏格拉底提问

我使用了chatgpt对我的linux相关知识进行了提问我进行了回答,我没学过的不会的问题也使用chatgpt进行了解答
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

标签:printf,文件,20211105,信息安全,gcc,编译,李宜时,test,hello
From: https://www.cnblogs.com/liyishi1110/p/17691705.html

相关文章

  • 《信息安全系统设计与实现》第一周学习笔记
      </d  第一章知识点归纳:1。进程:进程是计算机中正在运行的程序的实例。在操作系统中,每个进程都有自己独立的内存空间和执行环境。进程可以包含一个或多个线程,每个线程执行进程的一部分任务。进程之间是相互独立的,它们通过进程间通信(IPC)来进行数据交换和协调。每个进程......
  • 《信息安全系统设计与实现》第一周学习笔记
    《信息安全系统设计与实现》第一周学习笔记第一章摘要本章介绍了Unix的历史,包括贝尔实验室开发的Unix早期版本以及其他版本。此外,还介绍了Linux的开发及其各种发行版本,列出了适用于Linux的开发的各种硬件平台和虚拟机,并展示了如何将UbuntuLinux同时安装到MicrosoftWindows......
  • 20211421《信息安全系统设计与实现》第一周学习笔记
    知识点总结第一章关于本书研究Unix/Linux系统编程的专著,涵盖Unix/Linux的所有基本组件,包括进程管理、并发编程、定时器和时钟服务、文件系统、网络编程和MySQL数据库系统。本书目标强化学生编程背景知识动态数据结构的应用进程概念和进程管理并发编程定时器和定时功能......
  • 20211314王艺达信息安全系统设计与实现学习笔记(1)
    作业要求链接https://www.mosoteach.cn/web/index.php?c=interaction_homework&m=s_write&clazz_course_id=97072AE7-2C45-11EE-8539-1C34DA7B3F7C&id=F3080EAA-E3B7-414E-B311-938F0B8988F0&order_item=group&status=IN_PRGRS第一章学习总结及自测知识点归纳什么是Unix/Linux......
  • 《信息安全系统设计与实现》第一周学习笔记
    第一章引言关于本书本书是一部研究Unix/Linux系统编程的专注系统编程的作用系统编程是计算机科学和计算机工程教育不可或缺的一部分本书目标强化学生变成背景知识动态数据结构的应用进程概念和进程管理并发编程定时器和定时功能信号、信号处理......
  • 《信息安全系统设计与实现》第一周学习笔记
    《信息安全系统设计与实现》第一周学习笔记第一章关于本书介绍Unix/Linux的功能,着重探讨了编程实践,让学生通过实践来练习系统编程,涵盖Unix/Linux的所有基本组件,包括进程管理、并发编程、定时器和时钟服务、文件系统、网络编程和MySQL数据库系统。系统编程的作用系统编......
  • 信息安全系统设计与实现(上) 学习笔记1(教材1,2章)
    学习笔记1 知识点总结 第一章《Unix/Linux系统编程》教材第一章中介绍了Unix和Linux系统的基本概念以及编程环境的设置,介绍了系统编程的重要性和目标,旨在强化学生的编程背景知识,特别关注动态数据结构、进程管理、并发编程、定时器、信号处理、文件系统、TC......
  • 《信息安全系统设计与实现》第一周学习笔记
    《信息安全系统设计与实现》第一周学习笔记一、知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图第一章关于本书涵盖Unix/Linux的所有基本组件,包括进程管理、并发编程、定时器和时钟服务、文件系统、网络编程和MySQL数据......
  • 虚化及信息安全学习历程--Apple的学习笔记
    一,前言先做了一个基本方向的定义,然后我就开始玩qemu,基于qemu做二次开发。在学习qemu的过程中主要学习hypervisor,然后再学习信息安全相关内容。二,过程记录tbd三,新路历程2023/09/01:开学咯,之前的blog我写了5年,由于不好用,所以我换了blog同时也换了新的学习大方向,正好再来一个5年。 ......
  • 20211325 2023-2024-1 《信息安全系统设计与实现(上)》第一周学习笔记
    202113252023-2024-1《信息安全系统设计与实现(上)》第一周学习笔记一、任务要求任务详情自学教材第1,2章,提交学习笔记(10分),评分标准如下1.知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容(4分)......