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管理
postgres源码目录结构的更多相关文章
- Linux基础系列—Linux内核源码目录结构
/** ****************************************************************************** * @author 暴走的小 ...
- 【安卓本卓】Android系统源码篇之(一)源码获取、源码目录结构及源码阅读工具简介
前言 古人常说,“熟读唐诗三百首,不会作诗也会吟”,说明了大量阅读诗歌名篇对学习作诗有非常大的帮助.做开发也一样,Android源码是全世界最优秀的Android工程师编写的代码,也是A ...
- InfluxDB源码目录结构解析
操作系统 : CentOS7.3.1611_x64 go语言版本:1.8.3 linux/amd64 InfluxDB版本:1.1.0 influxdata主目录结构 [root@localhost ...
- chromium浏览器开发系列第三篇:chromium源码目录结构
上两篇介绍了下载源码和编译源码,这次主要介绍chromium的源码目录结构,我也是通过源码和官网结合来跟大家说,如果有说的不准确的,欢迎交流. 另外,官网的不一定准确,他们其实也很懒,所以最主要还是靠 ...
- (转)android系统架构及源码目录结构
转自:http://blog.csdn.net/finewind/article/details/46324507 1. Android系统架构: android系统架构采用了分层架构的思想,如下图所 ...
- (3.1)mysql基础深入——mysql二进制与源码目录结构介绍
(3.1)mysql基础深入——mysql二进制与源码目录结构介绍 关键字:二进制目录结构,源码目录结构(编译安装目录结构) 1.二进制安装程序目录结构 [1] BIN -- mysql的可执行文件( ...
- Locust源码目录结构及模块作用
Locust源码目录结构及模块作用如下: 参考文章:https://blog.csdn.net/biheyu828/article/details/84031942
- Source Code Structure - Python 源码目录结构
Source Code Structure - Python 源码目录结构 Include 目录包含了 Python 提供的所有头文件, 如果用户需要用 C 或 C++ 编写自定义模块扩展 Pytho ...
- [py]python的继承体系-源码目录结构
python3安装目录 pip install virtualenv pip install virtualenvwrapper pip install virtualenvwrapper-win m ...
随机推荐
- final,buaa_oo conclusion
UML系列作业设计架构 第13次作业 本单元的第一次作业中,涉及到了类图的解析.在着手做这单元作业的时候,需要将每一种 UmlElement 再封装,并在解析时,用 helper 单例来进行查询处理( ...
- win10系统中virtualbox无法安装64位系统
win10系统中virtualbox无法安装64位系统 先总结下如果想在虚拟机中安装64位的Linux系统,最好能满足这几个条件: 64位CPU 64位操作系统 64位的虚拟机软件 开启BIOS虚拟化 ...
- android 之 Dialog
Android平台下对话框主要有普通对话框.选项对话框.单选多选对话框.进度对话框.日期对话框.时间对话框等. 在程序中通过开发回调方法onCreateDialog来完成对话框的创建,该方法需要传入代 ...
- Hive中文注释乱码解决方案(2)
本文来自网易云社区 作者:王潘安 执行阶段 launchTask 回到Driver类的runInternal方法,看以下执行过程.在runInternal方法中,执行过程调用了execute方法 ...
- NYOJ 745 首尾相连数组的最大子数组和
首尾相连数组的最大子数组和 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 给定一个由N个整数元素组成的数组arr,数组中有正数也有负数,这个数组不是一般的数组,其首 ...
- Non-maximum suppression(非极大值抑制算法)
在RCNN系列目标检测中,有一个重要的算法,用于消除一些冗余的bounding box,这就是non-maximum suppression算法. 这里有一篇博客写的挺好的: http://www.c ...
- shell的if-else的基本用法
if 语句通过关系运算符判断表达式的真假来决定执行哪个分支.Shell 有三种 if ... else 语句: if ... fi 语句: if ... else ... fi 语句: if ... ...
- Android从Fragment跳转到Activity
代码改变世界 Android从Fragment跳转到Activity Intent intent = new Intent(getActivity(), LoginActivity.class); s ...
- BZOJ 1095 [ZJOI2007]Hide 捉迷藏 ——动态点分治
[题目分析] 这题好基啊. 先把分治树搞出来.然后每个节点两个堆. 第一个堆保存这个块里的所有点(即分治树中的所有儿子)到分治树上的父亲的距离. 第二个堆保存分治树子树中所有儿子第一个堆的最大值. 建 ...
- [BZOJ2287]【POJ Challenge】消失之物(DP)
传送门 f[i][j]表示前i个物品,容量为j的方案数c[i][j]表示不选第i个物品,容量为j的方案数两个数组都可以压缩到一维 那么f[i][j] = f[i - 1][j] + f[i - 1][ ...