首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Oracle进程内存结构-如何察看Oracle进程消耗的内存

Oracle进程内存结构-如何察看Oracle进程消耗的内存 Last Updated: Sunday, 2004-11-28 11:12 Eygle 经常有人问到如何在Unix下确定进程消耗的内存资源...实际上是Top输出显示的Oracle进程内存使用,包含了SGA部分。这也是SGA的意义所在。 SGA可以被共享,可以被所有进程所访问,在进程的寻址空间里就包含了SGA的大小。...至于如何更为精确的确定进程的内存消耗,本文简要介绍如下(在QuickIO下,你可能无法看到本文描述情况): 1.系统平台及数据库版本 $ uname -a SunOS billing 5.8 Generic...0 0.00% oracle 3.Pmap输出及进程内存计算 $ ps -ef|grep ora_ oracle 9881 9872 0 10:49:57 pts/2 0:00 grep...: 337360K - 266240K = 71,120k 这就是一个进程所消耗的内存. 4.用户进程内存使用举例 $ ps -ef|grep LOCAL oracle 10080 9872

3.3K30
您找到你想要的搜索结果了吗?
是的
没有找到

Oracle架构、原理、进程

我们来引入第一个概念,Oracle服务器,所谓Oracle服务器是一个数据库管理系统,它包括一个Oracle实例(动态)和一个Oracle数据库(静态)。...发起连接的应用程序或工具通常称为用户进程,连接发起后,Oracle服务器就会创建一个进程来接受连接,这个进程就成为服务进程服务器进程代表用户进程Oracle实例进行通信,在专用服务器连接模式下,用户进程和服务进程是...当服务器进程开始和Oracle实例进行通信时,一个会话就被创建了。显然处理一个查询要经过语法分析、绑定、执行、提取等阶段。...它包含Oracle服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。...19.6逻辑结构 表空间就是典型的Oracle逻辑结构类型 —— 里面存放着若干的数据文件。

2.9K21

Oracle内存结构和后台进程

Oracle实例=内存+后台进程 Oracle数据库=实例+物理存储结构 由上图可知Oracle实例(一个Instance)由内存结构和程序结构组成,内存结构主要是SGA,程序结构主要是后台进程。...Software code areas Oracle存放自身软件代码的一部分内存区,不允许其他会话访问 后台进程 Oracle进程 用户进程 user process 服务器进程 server process...后台进程(链接内存和磁盘的桥梁) 系统监控进程SMON Oracle数据库至关重要的一个后台进程,SMON 是System Monitor 的缩写,意即:系统监控。...(也就是说是把联机重做日志变成归档日志)。online redo log 是被用来为实例失败的时候,恢复数据文件。而归档日志是被用来在media recovery的时候,恢复数据文件。...commit的目的就是为了写到redo log files中去保护数据。 checkpoint会触发DBWn进程,将脏数据块写到数据文件中。

1.1K20

进程服务器

一、思路 先与客户端建立好连接, 每次监听到一个客户端之后,都需要产生一个子进程去处理这个连接,然后父进程继续去等待监听,唯一一个要注意的点就是要使用信号来监听子进程是否结束,从而对其进行回收,防止僵尸进程的产生...socket函数 这里使用的是Ipv4,TCP套接字,所以使用的接口是:lfd = socket(AF_INET, SOCK_STREAM, 0)如果是IPV6把AF_INET后面加个6,如果是UDP,那就是把第二个改成...SO_REUSEADDR, &opt, sizeof(opt)); (3)bind函数 bind(lfd, (struct sockaddr*)&ser_addr, sizeof(ser_addr));b这个函数主要目的就是服务器的地址结构绑定到套接字...lfd上,所以开始要设置服务器的ser_addr:ser_addr.sin_family = AF_INET, ser_addr.sin_port = htons(8888);ser_addr.sin_addr.s_addr...监听到了客户端后,就要开始创建子进程来对这个监听进行处理;pid = fork() 3、子进程处理通信 因为子进程不需要监听连接,使用可以close(lfd);之后便可以进行通信处理 void do_work

4.7K20

【Android 进程保活】Android 进程优先级 ( 前台进程 | 可见进程 | 服务进程 | 后台进程 | 空进程 )

文章目录 一、Android 进程优先级 二、前台进程 三、可见进程 四、服务进程 五、后台进程 六、空进程 一、Android 进程优先级 ---- Android 进程优先级 : ① 前台进程 >...② 可见进程 > ③ 服务进程 > ④ 缓存进程 > ⑤ 空进程 ; 关键优先级进程 : ① 活动进程 ; 高优先级进程 : ② 可见进程 , ③ 服务进程 ; 低优先级进程 : ④ 后台进程..., ⑤ 空进程 ; Android 系统中会尽量保证优先级高的进程的存在时间尽可能长 ; 如果资源不足 ( 这里的资源最主要的是内存 ) , 为了可以新建进程 , 以及重要进程的运行 , 系统会杀死一些低优先级进程...如弹出对话框 , 对话框是前台进程 , 后面被覆盖的 Activity 就变成了可见进程 ; 绑定在 可见 Activity 组件上的 Service 进程 , 也被称为可见进程 ; 可见进程也是很重要的进程..., 除非为了保证前台进程的运行 , 一般不会被回收 ; 四、服务进程 ---- ① 服务进程 : 调用 startService 方法启动的 Service 进程组件 , 就是服务进程 , 其没有与

1.9K20

Nginx服务器进程

Nginx服务器进程有3类:主进程、工作进程、缓存进程 (1)主进程 Nginx启动时运行的主要进程,主要功能是与外界通信和对内部其他进程进行管理 主要工作内容 1)读取配置文件,验证有效性和正确性...2)建立、绑定、关闭 socket 3)按照配置生成、管理、结束工作进程 4)接收指令,如 重启、升级、退出 5)不中断服务,平滑重启、升级,升级失败的回滚处理 6)开启日志文件,获取文件描述符 (2)...工作进程 由主进程生成,生成数量由配置文件指定,工作进程生存于主进程的整个生命周期 主要工作内容 1)接收请求 2)将请求依次送入各个功能模块进行过滤处理 3)IO调用,获取响应数据 4)与后端服务器通信...,接收后端服务器处理结果 5)数据缓存,访问缓存索引、查询、调用缓存数据 6)发送请求结果 7)接收主进程指令,如 重启、升级、退出 (3)缓存进程 缓存进程有两类 1)缓存索引重建进程 nginx启动后由主进程生成...,在缓存元数据重建完成后就自动退出 该进程启动后,对缓存文件的目录结构扫描,在内存中建立索引元数据库 2)缓存索引管理进程 生存于主进程的整个生命周期 负责在索引元数据更新完成后,对元数据是否过期进行判断

4.4K40

【Linux】Linux进程控制>进程创建&&进程终止&&进程等待&&进程程序替换

1.进程创建 1.1 fork函数 在linux中fork函数时非常重要的函数,它从已存在进程中创建一个新进程。...新进程为子进程,而原进程为父进程 #include pid_t fork(void); 返回值:自进程中返回0,父进程返回子进程id,出错返回-1 进程调用fork,当控制转移到内核中的...fork代码后,内核做: 分配新的内存块和内核数据结构给子进程 将父进程部分数据结构内容拷贝至子进程 添加子进程到系统进程列表当中 fork返回,开始调度器调度 当一个进程调用fork之后,就有两个二进制代码相同的进程...具体见下图: 1.3 fork常规用法 一个父进程希望复制自己,使父子进程同时执行不同的代码段。例如,父进程等待客户端请求,生成子进程来处理请求 一个进程要执行一个不同的程序。...shell建立一个新的进程,然后在那个进程中运行ls程序并等待那个进程结束 然后shell读取新的一行输入,建立一个新的进程,在这个进程中运行程序 并等待这个进程结束。

11610

服务器被入侵,异常进程无法杀掉,随机进程

故事情节: 有一天在聚餐中,我有一个朋友和我说他的服务器上有有个异常的进程他一直在占满CPU在运行,我在一顿谦虚之后答应了他,有空登录上他的服务器看一下具体情况。...就是以上三张图,在proc目录中的exe指向的文件已被删除,我看到这里,我好奇这个进程肯定是被隐藏掉了。这时,我急中生智跟这位朋友要了root账号密码。...登录服务器用top命令一看,发现一个奇怪的进程在运行,我使用kill命令将其杀后,等了十来分钟后,发现没有被启动,这时我和这位朋友说干掉了,他问我是不是kill掉了,我说嗯,他又补充到,这个进程杀掉过段时间会起来的...还干满了CPU,就在这时,我在研究这个进程运行文件的时候发现: 这个进程会连到一个韩国的服务器上,我访问这个IP发现是一个正常的网站,没有异常情况。...在最后查看了定时任务并搞成了一个base64的字符串 再往下就是下载脚本执行并添加定时任务了,有意思的是这个脚本的2017年的,至今还再用。

11.1K40

python 进程间通信(四) -- 共享内存与服务器进程

但 Python 的 multiprocessing 包中仍然提供了两种方法让你可以在多进程环境下共享数据: 共享内存 服务器进程 3....解决这样的问题的方法就是加锁: from multiprocessing import Process, Value def func(n): with n.get_lock():...服务器进程 — server process python 提供了一种十分类似共享内存的数据共享机制 — 服务器进程。...通过 multiprocessing 包中的 Manager 类可以构造一个服务器进程对象,他支持用于进程间共享的多种数据类型: list dict Namespace Lock RLock Semaphore...BoundedSemaphore Condition Event Barrier Queue Value Array 一旦创建,对象的使用与原生类型的用法是完全相同的,因此相比于共享内存,服务器进程的使用更为简单和灵活

4.3K20

Linux:进程地址空间、进程控制(一.进程创建、进程终止、进程等待)

对于32位系统,进程地址空间通常是从0到4GB,这个范围内包含了代码段、数据段、堆、栈等部分,用于存放程序的指令、数据以及动态分配的内存(就是我们上面那个图) 每个进程都有自己独立的地址空间,使得进程间可以互相隔离...操作系统肯定也要对进程地址空间进行管理,那就说明也需要:先描述再组织 进程地址空间是数据结构,具体到进程就是特定数据结构的对象。...在C、C++等编程语言中,main函数是程序的入口点,当程序执行完毕后,main函数会返回一个整数值给操作系统,这个整数值就是进程退出码。...,也就是程序的退出码用于表示程序的执行状态,并帮助调用程序理解程序结束的原因 在进程代码中,任意地方调用exit()函数都表示进程退出(不一定非要在main()函数里) #include<stdio.h...(就是我们上面讲的进程出现异常时收到的异常信号) 4.3 OS会做什么 当进程创建和进程终止时,操作系统会执行一系列的操作来确保系统的稳定性和资源管理的有效性。

6200

Linux:进程概念(二.查看进程、父进程与子进程进程状态详解)

2.父进程与子进程 2.1介绍 在操作系统中,当一个进程(称为父进程)创建另一个新进程(称为子进程)时,父子进程之间建立了一种特殊的关系。...这种关系具有以下特点和行为: 父子关系: 子进程的父进程是创建它的进程,即父进程。 每个进程都有唯一的父进程。...PID关系: 子进程的PID(进程标识符)是由父进程调用fork()或类似系统调用创建的。 子进程的PPID(父进程标识符)与创建它的父进程的PID相同。...下面是对这两个返回值的解释: 给父进程返回子进程的 PID:在父进程中,fork 返回新创建子进程进程 ID(PID),这个 PID 是子进程的标识符,父进程通过这个 PID 可以识别并操作子进程。..."%d",&a); printf("%d",a); return 0; } 这段代码中,需要获取软硬件的资源所以进入阻塞状态 阻塞队列(等待队列)是由对应的的硬件提供的,scanf这里就是键盘

79310

day37(多进程)- 多进程、守护进程进程

1.父进程中什么一个n = 100 p = Process(target=func) p.start() p.join() # 4.等待子进程结束 print('父进程号...:', os.getpid(), ',n值是', n) # 运算结果如下,证明力子进程和父进程之间的数据内存是完全隔离的 数据隔离的结果: 子进程号: 10428 ,n值是: 0 父进程号...1) print('p进程是否存活->', p_obj.is_alive()) 5.关于如何使用进程锁 # 本质上多进程的时候,阻塞其他进程,只允许一个进程操作 # # # 任何进程只要使用了同一个锁对象...import Process, Lock import time def action(pro, lock): # 上锁 # 本质上多进程的时候,阻塞其他进程,只允许一个进程操作..., lock): # 上锁 # 本质上多进程的时候,阻塞其他进程,只允许一个进程操作 print(pro, '进入了程序') lock.acquire() print

95600

【Linux】进程控制:理解什么是进程创建,进程终止,进程等待 | 进程替换

不能简单的当作整形来看待,它有32个比特位,可以当作位图来看待,具体细节如下图(只研究status低16比特位): 低7位用来表示终止信号 第8位表示 core dump标志 第9位到第15表示退出状态,也就是说正常退出为...等待的原理: 其实子进程在退出的时候,会把退出码,终止信号写入到PCB的 exit_code  和  exit_signal 变量中,等待进程时,也就是从子进程的PCB中读取这两个变量的值,并写入到输出型变量...第一件事就是要先找到这个程序,找到程序后做什么? 第二件事就是你得知道要怎么执行这个程序。...也就是 execl 前面的代码会被执行,后面的代码不会被执行,这是为什么?...gcc -o $@ $^ -std=c99 .PHONY:clean clean: rm -rf test other1exe other2exe  定义一个伪目标 all ,all 的依赖文件就是你所需要生成的文件

22410

浅谈Oracle RAC(10)- RAC DB特有进程

RAC(7) -CRS组件 浅谈Oracle RAC(8) -OCR和投票盘 浅谈Oracle RAC(9)- RAC DB 简介 今天我们介绍一下RAC DB与Oracle单实例数据库在进程上面的一些主要差别...1.内存融合技术 在谈RAC DB特有进程的时候,我们首先需要了解一个基础概念就是内存融合技术(Cache Fusion)。可以说这是RAC DB最核心的技术。...所以区别于Oracle单实例数据库,Oracle RAC还有专门与ASM实例进行连接用的特有进程。 关于ASM以后会拿出相当多篇幅介绍。...比如某4核CPU的服务器,装有2套RAC数据库的2个实例,那么2个实例中设定的LMS的总数不能大于4....因为LMS的个数和性能会严重影响到SQL性能,所以RAC数据库要求各个节点的服务器硬件配置要一致。

1.1K20

进程TCP并发服务器

进程TCP并发服务器 最初的服务器都是迭代服务器服务器处理完一个客户的请求,再接受下一个客户的请求。但是我们的期望应该是一台服务器同时为多个客户服务。...实现并发服务器最简单的办法就是为每个客户均fork一个子进程。...[accept返回后客户-服务器的状态] 并发服务器的下一步是调用fork,下图是从fork返回后的状态。此时描述字listenfd和connfd是父进程-子进程共享的。...[fork返回后客户-服务器的状态] 下一步是父进程关闭已连接套接口,子进程关闭监听套接口。...[父子进程关闭相应套接口后客户-服务器的状态] 最后的结果是子进程处理与客户的连接,父进程可对监听套接口调用accept来处理下一个连接。

5.9K90
领券