postgres源码目录结构

1.第一级目录介绍

|_postgres

|_aclocal.m4------------config用的文件的一部分

|_config----------------config文件目录

|_configure-------------configure文件

|_contrib---------------contribution程序

|_COPYRIGHT----------版权信息

|_doc------------------文档目录

|_GNUmakefile.in-------makefile雏形

|_HISTORY-------------修改历史

|_README-------------git说明

|_README.git----------git文件

|_src-------------------源代码目录

2.src目录介绍

|_src

|_backend---------------后端的源码目录

|_bcc32.mak-------------win32用的makefile(Borland C++用)

|_bin---------------------psql等UNIX命令的代码

|_common---------------通用的函数

|_DEVELOPERS----------面向开发人员的注释

|_include-----------------头文件

|_interfaces--------------前端相关的代码

|_Makefile----------------Makefile

|_Makefile.global.in-------Configure使用的Makefile.global的雏形

|_Makefile.shlib-----------共享库的makefile

|_nls-global.mk-----------信息目录用的makefile文件的规则

|_pl-----------------------存储过程语言的代码

|_port--------------------平台移植相关的代码

|_template----------------平台相关的设置模版

|_test---------------------各种测试脚本

|_timezone---------------时区相关的代码

|_tools-------------------各自开发的工具和文档

|_tutorial-----------------教程

|_win32.bak--------------Win32用的makefile(Visual C++用)

1.backend目录介绍

|_backend

|_access-----------------各种存储访问方法(在各子目录下),

|_common(共同 函数)

|_gin(Gerneralized Inverted Index通用逆向索引)

|_gist(Gerneralized Search Tree通用索引)

|_hash(哈希索引)

|_heap(heap的访问方法)

|_bootstrap-------------数据库的初始化处理(initdb)

|_catalog----------------系统目录

|_commands------------select/insert/update/delete以外的SQL命令

|_common.mk-----------

|_executor--------------执行器(访问的执行)

|_foreign----------------FDW(Foreign Data Wrapper)处理

|_lib---------------------共同的函数

|_libpq------------------前端<->后端通信处理

|_Makefile---------------makefile文件

|_nls.mk----------------

|_nodes-----------------构建树节点的相关处理函数

|_optimizer--------------优化器

|_parser-----------------SQL语句解析器

|_po---------------------

|_port-------------------平台相关的代码

|_postmaster------------postmaster的主函数(常驻postgres)

|_regex------------------正则处理

|_replication-------------streaming replacation

|_rewrite----------------规则及视图相关的重写处理

|_snowball--------------全文检索相关(语义处理)

|_storage---------------共享内存、磁盘上的存储、缓存等全部一次、二次记录管理

|_buffer--------------缓存管理

|_file-----------------文件

|_freespace----------Free Space Map管理

|_ipc-----------------进程间的通信

|_large_object--------大对象的访问函数

|_lmgr----------------锁管理

|_page---------------页面访问相关的函数

|_smgr---------------存储管理器

|_tcop----------------postgres(数据库引擎的进程)的主要部分

|_tsearch----------------全文检索

|_utils-------------------各种模块

|_adt-----------------嵌入的数据类型

|_cache---------------缓存管理

|_error----------------错误处理

|_fmgr----------------函数管理

|_misc-----------------其他

|_mmgr---------------内存管理函数

|_resowner------------查询处理中的数据(buffer bin及表锁)的管理

|_sort-----------------排序处理

|_time-----------------事务的MVCC管理

时间: 2024-08-01 10:33:08

postgres源码目录结构的相关文章

Swift的源码目录结构 其中proxy是前端的业务接入进程

Swift的源码目录结构.其中proxy是前端的业务接入进程.account.container和object目录分别是账户.容器 和对象的业务处理逻辑进程.common目录是一些通用工具代码.common中比较重要的有:哈希环的处理逻辑.接下来会依次介绍各个进程的源码逻辑和 一些关键点机制. 各个业务进程或模块之间的逻辑关系可以参考文中的架构图. 二.Proxy进程的业务处理 首先需要掌握基于PasteDeploy的堆栈式WSGI架构.根据PasteDeploy定义的各个层,可以很快理清配置文

Mysql源码目录结构

Programs for handling SQL commands. The "core" of MySQL. These are the .c and .cc files in the sql directory: derror.cc --- read language-dependent message file des_key_file.cc --- load DES keys from plaintext file discover.cc --- Functions for

chromium浏览器开发系列第三篇:chromium源码目录结构

上两篇介绍了下载源码和编译源码,这次主要介绍chromium的源码目录结构,我也是通过源码和官网结合来跟大家说,如果有说的不准确的,欢迎交流. 另外,官网的不一定准确,他们其实也很懒,所以最主要还是靠自己.官网只能作为一个参考. Chromium结构相对两年前变化很大.目录结构依然很清晰,主要有三个部分(不包括其他的库):浏览器,渲染器,webkit.浏览器是主要的进程,代表所有的UI和I / O.渲染通常是每个tab页的子过程,是由浏览器驱动.Webkit做布局和渲染. 简单介绍解决方案文件:

转:《Linux设备驱动程序3》源码目录结构和源码分析经典链接

转自:http://blog.csdn.net/geng823/article/details/37567557 [原创][专栏]<Linux设备驱动程序>--- LDD3源码目录结构和源码分析经典链接 [专栏]Linux设备驱动程序学习(总目录) [专栏]LDD3源码分析链接(总目录) 1. LDD3源码分析之hello.c与Makefile模板 2. LDD3源码分析之字符设备驱动程序 其他错误: 我的Linux内核为 3.2.0-65-generic-pae,在scull目录下make时

跟厂长学PHP内核(三):源码目录结构

上篇文章我们已经介绍了源码分析工具的安装.配置以及调试方法,本文我们来讲述一下PHP源码的目录结构. 一.目录概览 以php-7.0.12为例,看过源码的同学们应该发现源码目录多达十多个,下面是每个目录的说明. 目录 说明 TSRM 线程相关安全的实现 Zend PHP解析器的核心实现 build linux下编译相关的目录 ext PHP的扩展 main PHP的主要代码 netware 网络目录,socket的定义与实现 pear PHP扩展及应用的代码仓库 sapi PHP的应用层接口 s

透过现象看本质——回头再看Nginx(进程模型、异步非阻塞、源码目录结构)

透过现象看本质--回头再看Nginx Nginx的进程模型 ? 使用过nginx的朋友都知道nginx的性能很高,而其原因可能少有人知.首先,nginx的架构就奠定了其高性能的基础.那么就先来看看nginx的基础架构吧,如下图所示:(不能完全理清楚所有内容也没关系,因为本小节讲述的主要内容是Nginx的进程模型) ? 本小节先来说说Nginx基础架构中的进程模型: ? 所谓进程模型,即Nginx响应请求或服务时程序运行(机器执行指令集)的方式,一般在nginx服务启动后,在Unix系统中会以da

2.15.1.linux内核源码目录结构1

2.15.1.1.源码从哪里来 (1)之前讲过,我们使用2.6.35.7版本的内核.这个版本的内核有三种:第一种是kernel.org上的官方版本,第二种是三星移植过的,第三种是九鼎X210的移植版本.我们讲课时使用第三种内核来讲解,后面的移植实验使用第二种内核来移植. (2)源码在开发板光盘中有.可以自己去linux下解压然后make distclean清理然后再次打包传输到windows下去解压分析:也可以直接去我网盘中下载我打包好的. (3)解压后最终在windows下得到了一个kerne

Android源码目录结构详解(转载)

转自:http://blog.csdn.net/xiangjai/article/details/9012387 在学习Android的过程中,学习写应用还好,一开始不用管太多代码,直接调用函数就可以了,但是工作中却需要修改到framework之类的东东 所以感觉开始纠结了,又是初学,很多不懂,所以就去找了关于源代码结构介绍的,感觉有很大帮助,所以转载过来分享 Android 4.0|-- Makefile|-- bionic (bionic C库)|-- bootable (启动引导相关代码)

Android源码目录结构说明

在学习Android的过程中,学习写应用还好,一开始不用管太多代码,直接调用函数就可以了,但是工作中却需要修改到framework之类的东东 所以感觉开始纠结了,又是初学,很多不懂,所以就去找了关于源代码结构介绍的,感觉有很大帮助,所以转载过来分享 Android 4.0 |-- Makefile |-- bionic (bionic C库) |-- bootable (启动引导相关代码) |-- build (存放系统编译规则及generic等基础开发包配置) |-- cts (Android