http://d.hatena.ne.jp/yohei-a/20091017/1255791152

第1回 Oracle8i Internal Services 1人読書会

Oracle

読んだところ

  1. Introduction

    • The Oracle Kernel Layers
    • The Kernel Services

書かれていること

  • この本の2章以降を理解するために必要なこと。
  • それは「Oracle の中心部 (Kernel) の階層構造 (layers)」。

要約

  • Oracle の中心部は階層構造になっている。
  • 各層は自分より下の層なら、好きな順番で、直接呼び出すことができる。
  • 呼出しから戻るとき以外、上の層に制御が上がることはない。
    • 例えば、Oracle Program Interface (OPI) から直接 Operating System Dependencies (S) を呼出して、次に Compilation Layer (KK) を呼出すことができる。しかし、Compilation Layer (KK) から Oracle Program Interface (OPI) を呼出すことはできない。
    • ただし例外がある。例えば、インデックスのリーフ・ブロックの分割やエクステント管理のようなケースで、transaction layer と data layer の間で再帰的な呼出しが発生する。
name short name
Oracle Call Interface OCI
User Program Interface UPI
Net8
Oracle Program Interface OPI
Compilation Layer KK
Execution Layer KX
Distributed Execution Layer K2
Network Program Interface NPI
Security Layer KZ
Query Layer KQ
Recursive Program Interface RPI
Access Layer KA
Data Layer KD
Transaction Layer KT
Cache Layer KC
Services Layer KS
Lock Management Layer KJ
Generic Layer KG
Operating System Dependencies S

妄想

ところで、この layer ってあくまでモジュールなど物理的なものをグルーピングする論理的な概念だと思う。

Oracle の実行ファイルを見てもこんな名前のはないし。この論理は物理とどう対応するのか? 手元の Oracle10gR2(Solaris10) で $ORACLE_HOME 下をちょっと調べてみたら、それっぽい名前のオブジェクトファイルがあった。Oracle のインストール時にこいつらが、リンクされて実行ファイルや共有ライブラリになるんだなたぶん。

$ cd /export/home/oracle/product/10.2.0/db_1/rdbms/lib
$ ls *k[a-zA-Z0-9]*
genksms.o kecwr.o kkpoban.o kprnts.o kpundf.o ksnktd.o kxmnsd.o kzvndv.o libskgxpg.a s0kuzr.o skrmpt.o sskfoded.o
kciwcx.o kfod.o kkxntp.o kprwts.o ksms.o ksnnni.o kxmwsd.o libknlopt.a libskgxpr.a s0kvpf.o skrnpt.o sskrmed.o
kcsm.o kgupc.o kkxwtp.o kpucb.o ksnkcs.o ksnnt2.o kzlilbac.o libskgxns.a libskgxpu.a skfedpt.o skrspt.o sskrned.o
kecnr.o kgutc.o kopc.o kpudfo.o ksnkkpo.o ktd.o kzlnlbac.o libskgxpd.a s0kudbv.o skfodpt.o sskfeded.o sskrsed.o

Oracle8i Internal Services的更多相关文章

  1. 深入MySQL源码 学习方法 何登成专家

    MYSQL 技术圈 有哪些做得好,又注重分享的公司: Oracle MySQL, MariaDB, Percona,Google, FB, Twitter, Taobao, NetEase… 有哪些值 ...

  2. Oracle 锁机制探究

    以前虽然在网上看到很多关于Oracle锁机制的描述,但总感觉哪里有缺陷不适合自己,因此花了点时间参考官网以及Tom Tyke的<Oracle 9i/10g/11g编程艺术>一书整理了一下O ...

  3. Open-sourcing sso, the way we secure services at BuzzFeed

    文章来源: https://tech.buzzfeed.com/unleashing-the-a6a1a5da39d6 说明: 设计有好多地方值得借鉴,粘贴过来的排版不好 Today we are o ...

  4. Build Telemetry for Distributed Services之OpenTracing实践

    官网:https://opentracing.io/docs/best-practices/ Best Practices This page aims to illustrate common us ...

  5. Stack Overflow: The Architecture - 2016 Edition

    To get an idea of what all of this stuff “does,” let me start off with an update on the average day ...

  6. HTTP Header Injection in Python urllib

    catalogue . Overview . The urllib Bug . Attack Scenarios . 其他场景 . 防护/缓解手段 1. Overview Python's built ...

  7. Learning WCF Chapter1 Exposing Multiple Service Endpoints

    So far in this chapter,I have shown you different ways to create services,how to expose a service en ...

  8. Oracle DBMS_SESSION

    Version 11.1   General Purpose Try dbms_session.reset_package. This call will reset all packages var ...

  9. 【转】浏览器DNS 预取读技术的危害

    今天中午在http://news.ycombinator.com/news看到一篇文章标题: Saved 10 billion DNS queries per month by disabling D ...

随机推荐

  1. ASCII码表含义

    在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a.b.c.d这样的52个字母(包括大写)以及0.1等数字还有一些常用的符号(例如*.#. ...

  2. Gym - 101775L SOS 博弈 找规律

    题目:https://cn.vjudge.net/problem/Gym-101775L PS:训练赛中被这道题折磨的不轻,和队友反复推必胜态与必败态试图推导出公式或者规律,然后推的心态逐渐失控,,, ...

  3. Python动态属性和特性(二)

    内置的property经常用作装饰器,但它其实是一个类.在Python中,函数和类通常可以互换,因为二者都是可调用对象,而且没有实例化的new运算符,所以调用构造方法和调用工厂函数没有区别,只要能返回 ...

  4. Django之include本质

    一. URL name详解 from django.conf.urls import url from django.contrib import admin from calc import vie ...

  5. 提交AppStore被拒原因总结

    (1)Information Needed We began the review of your app but aren’t able to continue because we need ad ...

  6. 实现类似QQ单一账户登录,在另一个地方登录后在原登录窗口提示下线

    首先,使用框架做的最好,可以在框架页直接做一次就好了 再登陆成功后保存session的代码后添加以下代码: 注意:需要引入命名空间using System.Collections; SetApplic ...

  7. seleniumIDE使用

    1.selenium IDE使用:适用于火狐浏览器 2.界面按钮包括录制(右上角的红点),运行脚本(中上页的绿色三角,包括依次运行和单个运行的2个运行按钮) 3.导出文件为.java,在文件选项中

  8. python-高级编程-04

    [http协议] 断句 : 由于tcp协议是基于流的传输协议,也就是在传输层本身是做不到断句的功能的, 于是断句需要在应用层协议实现.  最初用回车和换行来标示一套命令的结束 如果信息里面有 \r\n ...

  9. 我的PC必装软件

    我的PC必装软件 TeXLive LaTeX套装 WinEdt LaTeX编辑器 PyCharm Python IDE Inkscape 矢量图制作,我根本不会用,但是常用来把SVG转成*.tex文件 ...

  10. 《机器学习实战》笔记——regression

    本章介绍了不同场景下使用的线性回归方法 一般情况:简单的线性回归 欠拟合:局部加权线性回归 特征数大于样本数:岭回归 或 lasso法 最后引出交叉验证,用来定量地找到最佳参数值 # _*_ codi ...