上一页 1 2 3 4 5 6 7 8 9 10 ··· 15 下一页
摘要: Web客户端和服务器之间的交互用的是一个基于文本的应用级协议,叫做HTTP(Hypertext Transfer Protocol,超文本传输协议)。HTTP是一个简单的协议。一个Web客户端(即浏览器)打开一个到服务器的因特网连接,并且请求某些内容。服务器响应所请求的内容,然后关闭连接。浏览器读取 阅读全文
posted @ 2023-08-05 15:12 进击的胖虎 阅读(19) 评论(0) 推荐(0)
摘要: 客户端-服务器编程模型 每个网络应用都是基于客户端-服务器模型的。采用这个模型,一个应用是由一个服务器进程和一个或者多个客户端进程组成。服务器管理某种资源,并且通过操作这种资源来为它的客户端提供某种服务。例如,一个Web服务器管理着一组磁盘文件,它会代表客户端进行检索和执行。一个FTP服务器管理着一 阅读全文
posted @ 2023-08-05 14:46 进击的胖虎 阅读(15) 评论(0) 推荐(0)
摘要: 内核用三个相关的数据结构来表示打开的文件: 描述符表(descriptor table)。每个进程都有它独立的描述符表,它的表项是由进程打开的文件描述符来索引的。每个打开的描述符表项指向文件表中的一个表项。 文件表(file table)。打开文件的集合是由一张文件表来表示的,所有的进程共享这张表。 阅读全文
posted @ 2023-08-02 16:13 进击的胖虎 阅读(27) 评论(0) 推荐(0)
摘要: 每个Linux文件都有一个类型(type)来表明它在系统中的角色: 普通文件(regular file)包含任意数据。应用程序常常要区分文本文件(text file)和二进制文件(binary file),文本文件是只含有ASCII或Unicode字符的普通文件;二进制文件是所有其他的文件。对内核而 阅读全文
posted @ 2023-08-02 16:06 进击的胖虎 阅读(65) 评论(0) 推荐(0)
摘要: 垃圾收集器(garbage collector)是一种动态内存分配器,它自动释放程序不再需要的已分配块。这些块被称为垃圾(garbage)(因此术语就称之为垃圾收集器)。自动回收堆存储的过程叫做垃圾收集(garbage collection)。在一个支持垃圾收集的系统中,应用显式分配堆块,但是从不显 阅读全文
posted @ 2023-07-31 16:27 进击的胖虎 阅读(59) 评论(0) 推荐(0)
摘要: 动态内存分配器维护着一个进程的虚拟内存区域,称为堆。分配器将堆视作一组大小不同的块的集合来维护。 显式分配器(explicit allocator),要求应用显式地释放任何已分配的块。例如,C标准库提供一种叫做malloc程序包的显式分配器。C程序通过调用malloc函数来分配一个块,并通过调用fr 阅读全文
posted @ 2023-07-31 16:22 进击的胖虎 阅读(79) 评论(0) 推荐(0)
摘要: Linux通过将一个虚拟内存区域与一个磁盘上的对象(object)关联起来,以初始化这个虚拟内存区域的内容,这个过程称为内存映射(memory mapping)。虚拟内存区域可以映射到两种类型的对象中的一种: 1) Linux文件系统中的普通文件:一个区域可以映射到一个普通磁盘文件的连续部分,例如一 阅读全文
posted @ 2023-07-28 16:58 进击的胖虎 阅读(38) 评论(0) 推荐(0)
摘要: n位的虚拟地址包含两个部分:一个p位的虚拟页面偏移,一个n-p位的虚拟页号,将页表条目中的物理页号和虚拟地址空间的地址偏移量串联起来就得到物理地址。 展示了当页面命中时,CPU硬件执行的步骤。 第1步:处理器生成一个虚拟地址,并把它传送给MMU。 第2步:MMU生成PTE地址,并从高速缓存/主存请求 阅读全文
posted @ 2023-07-28 16:01 进击的胖虎 阅读(29) 评论(0) 推荐(0)
摘要: 计算机系统的主存被组织成一个由M个连续的字节大小的单元组成的数组。每字节都有一个唯一的物理地址。 使用虚拟寻址,CPU通过生成一个虚拟地址(Virtual Address,VA)来访问主存,这个虚拟地址在被送到内存之前先转换成适当的物理地址。将一个虚拟地址转换为物理地址的任务叫做地址翻译(addre 阅读全文
posted @ 2023-07-27 15:52 进击的胖虎 阅读(31) 评论(0) 推荐(0)
摘要: 一个系统中的进程是与其他进程共享CPU和主存资源的。然而,共享主存会形成一些特殊的挑战。随着对CPU需求的增长,进程以某种合理的平滑方式慢了下来。但是如果太多的进程需要太多的内存,那么它们中的一些就根本无法运行。当一个程序没有空间可用时,那就是它运气不好了。内存还很容易被破坏。如果某个进程不小心写了 阅读全文
posted @ 2023-07-27 14:28 进击的胖虎 阅读(17) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 9 10 ··· 15 下一页