首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    c语言基础学习10_文件操作01

    ============================================================================= ============================================================================= 涉及到的知识点有: 一、fopen函数。 二、fclose函数。 三、getc 和 putc 函数 1、通过getc和putc读写指定的文件、2、拷贝文件的代码。(一个一个字节的拷贝)、 3、改进版的代码:通过命令行参数,实现指定文件名的拷贝、4、文件的加密解密操作。(用getc和putc函数实现)。 四、fgets 和 fputs函数 1、fgets 和 fputs函数、2、拷贝文件的代码。(一行一行字节的拷贝)、3、文件的加密解密操作。(用fgets和fputs函数实现)、 4、课堂练习:超大文件排序、5、解析文件内容并追加结果。 五、fprintf 和 fscanf函数 1、课堂练习:运行的结果是打印出这个文件中年龄第二大人的姓名。 ============================================================================= ============================================================================= 文件操作

    03

    零拷贝(zero copy)技术你真的懂吗?什么时候需要用到内存映射?

    Linux系统是虚拟内存系统,虚拟内存并不是真正的物理内存,而是虚拟的连续内存地址空间。虚拟内存又分为内核空间和用户空间,内核空间是内核程序运行的地方,用户空间是用户进程代码运行的地方,只有内核才能直接访问物理内存并为用户空间映射物理内存(MMU)。内核会为每个进程分配独立的连续的虚拟内存空间,并且在需要的时候映射物理内存,为了完成内存映射,内核为每个进程都维护了一张页表,记录虚拟地址与物理地址的映射关系,这个页表就是存在于MMU中;用户进程访问内存的时候,通过页表把虚拟内存地址转换为物理内存地址进而访问数据;其实对于用户进程而言,虚拟内存就是内存一般的存在(当作内存看待就好)。这样的设计可以把用户程序和系统程序分开,互不影响;内核可以对所有的用户程序进行管理,比如限制内存滥用等

    01
    领券