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 ...
随机推荐
- 【11】把 GitHub 当 CMS 用
把 GitHub 当 CMS 用 你的网站需要显示一些文字,但是你还不想直接放在 HTML 里面,那你可以把 GitHub 作为你储存内容的一个地方. 这样,就可以让任何一个非程序员通过修改 Mark ...
- 45个有用的JavaScript技巧
众所周知,JavaScript是世界上最流行的变成语言,不管是web网页,手机APP(例如PhoneGap或Appcelerator),还是服务器端(例如NodeJS或Wakanda)还有许多其他的实 ...
- Leetcode 322.零钱兑换
零钱兑换 给定不同面额的硬币 coins 和一个总金额 amount.编写一个函数来计算可以凑成总金额所需的最少的硬币个数.如果没有任何一种硬币组合能组成总金额,返回 -1. 示例 1: 输入: co ...
- 11g自动分区超过最大限制
公司业务系统一张表按时间每天分区 写入数据时报错:ORA-14300: 分区关键字映射到超出允许的最大分区数的分区 ORA-14300: partitioning key maps to a part ...
- UITableView滑动动画+FPSLabel
主要使用了tableView的代理方法 行将要显示的时候 - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableView ...
- Shell脚本学习指南 [ 第一、二章 ] 背景知识、入门
摘要:第一章介绍unix系统的发展史及软件工具的设计原则.第二章介绍编译语言与脚本语言的区别以及两个相当简单但很实用的Shell脚本程序,涵盖范围包括了命令.选项.参数.Shell变量.echo与pr ...
- 【Luogu】P2331最大子矩阵(DP)
题目链接 这题的状态转移方程真是粗鄙. f[i][j][k]表示前i行用了j个矩阵状态为k的时候的最大值. k=0:两列都不选. k=1:取左弃右. k=2:选右弃左. k=3:左右都选,但分属于两个 ...
- spring之scope作用域
spring中,bean的作用域有五种类型:默认是单例模式, singleton prototype request session ...
- cf615D Multipliers
Ayrat has number n, represented as it's prime factorization pi of size m, i.e. n = p1·p2·...·pm. Ayr ...
- ElasticSearch API 之 GET
GET API是Elasticsearch中常用的操作,一般用于验证文档是否存在:或者执行CURD中的文档查询.与检索不同的是,GET查询是实时查询,可以实时查询到索引结果.而检索则是需要经过处理才能 ...