首页 > 其他分享 >20211105李宜时《信息安全系统设计与实现》第四周学习总结

20211105李宜时《信息安全系统设计与实现》第四周学习总结

时间:2023-10-01 16:12:37浏览次数:33  
标签:文件 20211105 调用 系统 信息安全 李宜时 file Linux 操作

第七第八章学习笔记

学习笔记:文件操作和系统调用

文件操作级别

文件操作通常可以分为三个级别:

  1. 低级别文件操作:直接访问文件的二进制数据,通常由操作系统提供支持。
  2. 文件I/O操作:使用高级别的API(如C的stdio库)来读取和写入文件。
  3. 文件系统操作:使用文件系统调用访问和管理文件,如POSIX标准中的系统调用。

文件I/O操作

文件I/O操作是在高级别上进行文件读写的方式。以下是一些常见的文件I/O操作函数(使用C语言为例):

#include <stdio.h>

int main() {
    FILE *file;
    char buffer[100];

    // 打开文件进行读取
    file = fopen("example.txt", "r");

    // 从文件中读取数据
    fgets(buffer, sizeof(buffer), file);

    // 关闭文件
    fclose(file);

    // 打开文件进行写入
    file = fopen("output.txt", "w");

    // 写入数据到文件
    fprintf(file, "Hello, World!");

    // 关闭文件
    fclose(file);

    return 0;
}

低级别文件操作

低级别文件操作允许直接访问文件的二进制数据,通常需要使用系统调用。这包括使用open()read()write()lseek()等函数。

#include <fcntl.h>
#include <unistd.h>

int main() {
    int file_descriptor;
    char buffer[100];

    // 打开文件进行读取
    file_descriptor = open("example.txt", O_RDONLY);

    // 从文件中读取数据
    read(file_descriptor, buffer, sizeof(buffer));

    // 关闭文件
    close(file_descriptor);

    // 打开文件进行写入
    file_descriptor = open("output.txt", O_WRONLY | O_CREAT, 0644);

    // 写入数据到文件
    write(file_descriptor, "Hello, World!", 13);

    // 关闭文件
    close(file_descriptor);

    return 0;
}

EXT2文件系统简介

EXT2(Second Extended File System)是Linux操作系统中广泛使用的文件系统。它具有高性能和稳定性,支持文件和目录的管理。

系统调用

系统调用是操作系统提供的接口,用于应用程序与操作系统内核之间的通信。它们允许应用程序执行底层操作,如文件访问、进程管理等。

简单的系统调用

一些简单的系统调用包括:

  • open():打开文件。
  • read():从文件中读取数据。
  • write():向文件写入数据。
  • close():关闭文件。
  • lseek():移动文件指针。

常用的系统调用

常用的系统调用包括:

  • fork():创建新进程。
  • exec():执行新程序。
  • wait():等待子进程结束。
  • pipe():创建管道。
  • select():多路复用I/O。

链接文件

链接文件允许一个文件关联到另一个文件,有两种类型的链接:硬链接和符号链接。

  • 硬链接:多个文件条目指向同一个磁盘数据块。
  • 符号链接:创建一个指向另一个文件的链接。
    当涉及基于Linux系统的文件操作和系统调用时,有一些额外的知识点和实践内容可以添加到学习笔记中:

基于Linux的文件操作

Linux系统提供了丰富的命令行工具和shell脚本,用于文件操作。以下是一些常用的Linux文件操作命令:

  • ls:列出目录中的文件和子目录。
  • cp:复制文件或目录。
  • mv:移动文件或目录。
  • rm:删除文件或目录。
  • chmod:修改文件权限。
  • chown:修改文件所有者。
  • find:在文件系统中查找文件。
  • grep:搜索文件中的文本。
  • tar:压缩和解压文件和目录。

Linux文件权限

Linux使用一套权限模型来控制文件和目录的访问权限。这包括读取(r)、写入(w)和执行(x)权限,分为所有者、组和其他用户。权限可以使用chmod命令进行修改。

系统调用在Linux中的应用

Linux系统调用是在应用程序和内核之间的桥梁,它们可以用于执行各种任务,如进程管理、文件操作、网络通信等。以下是一些在Linux中广泛使用的系统调用:

  • fork()exec():用于创建新进程并执行其他程序。
  • pipe():用于创建进程间通信的管道。
  • socket():用于网络编程。
  • poll()epoll():用于多路复用I/O。
  • mmap():用于内存映射文件。

实践内容

  1. 使用Linux命令行工具创建一个新的目录,并在其中创建几个文件和子目录。
  2. 使用chmodchown命令修改文件和目录的权限和所有者。
  3. 使用find命令查找特定类型的文件,并执行一些操作,如删除或移动。
  4. 编写一个简单的Shell脚本,演示如何使用Linux命令来自动化文件操作任务。
  5. 创建一个网络套接字,并使用系统调用编写一个简单的服务器和客户端程序。
  6. 使用mmap()系统调用将文件映射到内存,以进行高效的文件读写操作。

这些额外的知识点和实践内容将帮助你更深入地理解Linux系统下的文件操作和系统调用。请根据你的兴趣和需求选择相应的任务进行练习。如果你有任何问题或需要更多信息,请随时提问。

实践内容

  1. 创建一个文本文件 example.txt 并写入一些文本内容。
  2. 使用C编写程序,通过文件I/O操作读取 example.txt 的内容并写入到另一个文件 output.txt
  3. 使用低级别文件操作完成相同的任务。
  4. 探索Linux中的EXT2文件系统,了解其结构和特性。
  5. 编写一个C程序,演示常用的系统调用,如创建子进程、执行其他程序等。
  6. 创建一个硬链接和一个符号链接,演示它们的区别和使用场景。




标签:文件,20211105,调用,系统,信息安全,李宜时,file,Linux,操作
From: https://www.cnblogs.com/liyishi1110/p/17738931.html

相关文章

  • 《信息安全系统设计与实现》学习笔记4
    第七章:文件操作文件操作级别硬件级别fdisk:将硬盘、U盘或SDC盘分区mkfs:格式化磁盘分区,为系统做好准备fsck:检查和维修系统碎片整理:压缩文件系统中的文件操作系统内核中的文件系统函数每个操作系统内核均可为基本文件操作提供支持系统调用用户模式使用系统调......
  • 2023-2024-1 20211211《信息安全系统设计与实现》(上)第七、八章读书笔记
    教材第七、八章读书笔记第七章知识点归纳1文件操作级别-(1)硬件级别:-(2)操作系统中的文件系统函数-(3)系统调用-(4)I/O库函数-(5)用户命令-(6)sh脚本2文件I/O操作-(1)文件I/O操作示意图-(2)用户模式下的程序执行操作3低级别文件操作-(1)分区-(2)格式化分区-(3)挂载分区4EXT......
  • 信息安全系统设计与实现课程第七、八章学习笔记
    一、知识点归纳1.1、文件操作级别文件操作分为五个级别,按照从低到高的顺序排列如下:(1)硬件级别:硬件级别的文件操作包括:fdisk:用于将硬盘、U盘或SD卡等存储设备分区。mkfs:用于格式化磁盘分区,为文件系统做好准备。fsck:用于检查和维修文件系统的一致性。碎片整理:用于压缩......
  • 《信息安全系统设计与实现》第四周学习笔记
    《信息安全系统设计与实现》第四周学习笔记第七章:文件操作文件操作级别硬件级别fdisk:将硬盘、U盘或SDC盘分区mkfs:格式化磁盘分区,为系统做好准备fsck:检查和维修系统碎片整理:压缩文件系统中的文件操作系统内核中的文件系统函数每个操作系统内核均可为基本文件操作提供......
  • 2023-2024-1 20211327 信息安全系统设计与实现 学习笔记4(必做)
    学习笔记4文件操作使用系统调用进行文件操作实践过程文件操作1.文件操作级别(1)硬件级别:fdisk:将硬盘、U盘或SDC盘分区mkfs:格式化磁盘分区,为系统做好准备fsck:检查和维修系统碎片整理:压缩文件系统中的文件(2)操作系统内核中的文件系统函数:前缀k表示内核函数(3)系......
  • 《信息安全系统设计与实现》第四周学习笔记
    《信息安全系统设计与实现》第四周学习笔记第七章:文件操作文件操作级别硬件级别fdisk:将硬盘、U盘或SDC盘分区mkfs:格式化磁盘分区,为系统做好准备fsck:检查和维修系统碎片整理:压缩文件系统中的文件操作系统内核中的文件系统函数前缀为k表示内核函数系统调用:用户模......
  • 20211325 2023-2024-1 《信息安全系统设计与实现(上)》第四周学习笔记
    202113252023-2024-1《信息安全系统设计与实现(上)》第四周学习笔记一、任务要求自学教材第7,8章,提交学习笔记(10分),评分标准如下1.知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容(4分)“我......
  • 《信息安全系统设计与实现》第四周学习笔记
    一、课程内容第七章学习文件操作级别1、硬件级别fdiskmkfsfsck碎片整理2、操作系统内核中的文件系统函数3、系统调用4、I/O库函数5、用户命令6、sh脚本低级别的文件操作中的常用函数:打开和关闭文件:open():打开文件并返回文件描述符。close():关闭文件。读写文件:......
  • 信息安全系统设计与实现学习笔记4
    学习笔记4-总结知识点总结1.文件操作级别硬件级别:mkfs:格式化磁盘分区,为系统做好准备。fsck:检查和维修系统。碎片整理:压缩文件系统中的文件。操作系统内核中的文件系统函数:提供基本文件操作支持,例如:kmkdir(),krmdir()kchair(),kgetCwd()klink(),kunlink(......
  • 信息安全系统设计与实现——学习笔记4
    任务详情:自学教材第7,8章,提交学习笔记(10分)Part1知识点归纳&GPT提问知识点归纳chap7文件操作级别硬件级别fdiskmkfsfsck碎片整理操作系统内核中的文件系统函数系统调用I/O库函数用户命令sh脚本文件I/O操作低级别文件操作分区Command(mforhelp):m---......