操作系统,进程,程序,内存分配

一个程序操作系统为他分配哪些空间,都是干什么的,还有,操作系统在程序运行之前做些什么

2个回答

操作系统在程序启动前要分配内存,加载程序镜像,动态装配链接程序,初始化进程上下文,找到程序入口点并执行。

一个进程的地址,一般由堆栈(stack),堆(heap),代码区,静态数据区、常量区等构成。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
操作系统实验-CPU-进程-调度-内存分配-java
1,本资源共分两部分,第一期为本人的实验过程和代码;第二期为结合别人代码,对本人菜鸟级作品的评估和对java项目开发的进一步探讨; 2,因为资源中会引用他人的作品,涉及原创的问题,故在“操作系统实验项目开发声明.txt”中予以声明, 3,因个人时间安排原因,暂上传第一期资源,第二期会尽快续传,望见谅!
《操作系统》— 内存分配
驻留集大小 对于分页式的虚拟内存,在准备执行时,不需要也不可能把一个进程的所有页都读取到主存,因此,操作系统必须决定读取多少页。也就是说,给特定的进程分配多大的主存空间,这需要考虑以下几点: 分配给一个进程的存储量越小,在任何时候驻留在主存中的进程数就越多,从而可以提高处理机的时间利用效率。 如果一个进程在主存中的页数过少,尽管有局部性原理,页错误率仍然会相对较高。 如桌页数过多,由于局部...
操作系统内存分配
设计结构体模拟物理内存块 分别模拟FF、BF、WF三种适应算法动态地创建进程 能够动态地销毁进程并更新可用表与已分配表 显示出各个时间段内存块中已分配表与可用表的情况
操作系统内存分配C++实现
首次适配算法 最佳适配算法 最差适配算法
操作系统内存分配回收界面
mfc对话框形式类实现的的内存独立分配回收,独立操作界面.......................
操作系统内存分配实验源码
动态和静态分配两种分配方式 分别模拟FF、BF、WF三种适应算法动态地创建进程 能够动态地销毁进程并更新可用表与已分配表 显示出各个时间段内存块中已分配表与可用表的情况
VxWorks操作系统内存分配解析
VxWorks操作系统内存分配解析,想了解的可以看看!
操作系统内存分配算法
四种常见的内存分配算法,简要介绍其优缺点以及代码实现
操作系统课程设计 内存分配 进程调度
大二时做的课程设计。附源代码,流程图,实验报告,有线程 进程调度 时间片轮转 内存分配
操作系统里内存分配的问题
操作系统内存分为堆区 栈区等好多区域,但在多线程环境下,多个线程持有各自的栈,那么问题来了,内存中不就一个栈区吗 一个进程中多个线程各自持有各自的栈是怎么做到的,还是说栈区是有好多个?希望各位大神
关于进程的内存分配的问题
看《核心编程》关于内存的地方 有不明白的地方rnrn原文片段:“当用户要求执行一个应用程序时,系统会打开该应用程序对应的.exe文件并计算出应用程序的代码和数据的大小。然后系统会预订一块地址空间,并注明与该区域相关联的物理存储器就是.exe文件本身。是的,系统并没有从页交换文件中分配空间,而是将.exe文件的实际内容(或文件映像,即file image)用作程序预订的地址空间区域。这样一来,不但载入程序非常快,而且页交换文件也可以保持一个合理的大小。”rnrn这部分是实在看不懂 什么是“将.exe文件的实际内容用作程序预订的地址空间区域” 不是每个程序都是4GB的地址空间吗 然后这个将物理内存调拨给这些空间吗?rnrn往高手能通俗的解释下我的疑惑 多谢
操作系统 内存分配报告实例
操作系统 内存分配 操作系统 内存分配 报告实例
操作系统中的内存分配
连续的内存分配内存通常有两个区域 - 存放操作系统的区域 - 存放用户进程的区域 将多个进程存放到内存中需要考虑如何将输入队列中需要调入内存的多个进程进行内存分配。采用连续内存分配时,每个进程位于一个连续的内存区域。内存分配方法 固定分区分配 将内存分为多个固定大小的分区,每个分区只能容纳一个进程。当进程终止时,其分区可以被其他进程所利用。 现在这种方案已经不再使用,主要用于批处理的
操作系统内存分配实验
操作系统课程的实验,内存管理 内存分配实验,用VC++实现的
操作系统实验进程管理和内存分配
操作系统实验,有关进程调度和内存的分配算法实现
模拟内存分配 操作系统
模拟内存分配 操作系统 主存储器空间的分配和回收 打包了双份代码 可以互相参考
操作系统内存分配回收实验
一、实验内容 主存储器空间的分配和回收。 二、实验目的 一个好的计算机系统不仅要有一个足够容量的、存取速度高的、稳定可靠的主存储器,而且要能合理地分配和使用这些存储空间。当用户提出申请存储器空间时,存储管理必须根据申请者的要求,按一定的策略分析主存空间的使用情况,找出足够的空闲区域分配给申请者。当作业撤离或主动归还主存资源时,则存储管理要收回作业占用的主存空间或归还部分主存空间。主存的分配和回收的实现虽与主存储器的管理方式有关的,通过本实验帮助学生理解在不同的存储管理方式下应怎样实现主存空间的分配和回收。
操作系统 实验报告 内存分配与回收
操作系统课的实验报告,为后来者省心,特此共享,雁过留名,谢谢!
操作系统之内存分配算法
分 配 主 存 ,首次适应算法, 最佳适应算法 -主 存 回 收********
模拟操作系统 内存分配
操作系统 模拟内存分配 课程设计 有不同的算法
操作系统内存分配实验报告
使用C语言模拟了最先适应法、最佳适应法及最坏适应法三种算法进行内存分配
操作系统作业-内存分配
网络作业操作系统的。如果想下载就下载,包证是非常超值的。哈哈,信不信由你。
内存分配与回收 操作系统实验
本人以前的操作系统实验,当时是用eclipse写的,生成的.class文件在dos下可能无法直接运行。读者可以在src目录下面找到源代码,打开所有.java文件,把第一句package CPUScheduling去掉,然后保存自己重新编译,然后运行。
操作系统内存分配模拟实验
模拟操作系统内存分配中的首次适应算法,可以清晰的观察到随着进程的执行内存的动态分配过程,界面简单,使用方便。
操作系统 内存分配代码
操作系统 内存分配代码
操作系统课程设计模拟内存分配
首次适应和循环首次适应算法模拟内存分配2008-07-01 09:40/******************************** 内存管理模拟程序 *******************************/ #include<iostream.h> #include<stdio.h> #include<math.h> #include<stdlib.h> #include <time.h> #include <windows.h> /*定义宏*/ #define TotalMemSize 1024 /*划分的物理块的大小,地址范围0~1023*/ #define MinSize 2 /*规定的不再分割的剩余分区的大小*/ #define getpch(type) (type*)malloc(sizeof(type)) /*定义内存块*/ typedef struct memBlock { struct memBlock *next;/*指向下一个块*/ int stAddr; /*分区块的初始地址*/ int memSize; /*分区块的大小*/ int status; /*分区块的状态,0:空闲,1:以被分配*/ }MMB; /*定义全局变量*/
计算机操作系统---模拟内存分配
首次适应算法模拟内存分配中的分配,回收,释放,等基本操作
进程交换和连续内存分配
进程交换 进程需要是需要在内存当中才方便去执行,当然进程也可以暂时的从内存当中交换到备份存储中,这个备份存储通常是磁盘,因为它必须足够的大,以便可以容纳所有用户的内存镜像副本 假如有一个CPU调度的算法,将另一进程换入到刚刚释放的内存空间当中,同时CPU调度器可以将时间片分配给其他已在内存中的进程,当每个进程用完时间片,它将与另一进程进行交换 这样的交换策略的变种其实可以被用在基于优先级...
[分享]Java进程内存分配
近日学习到了Java内存管理相关的内容,了解了Java内存中Permanent、Old和Young Generation的概念,内容如下文:rnrn[url=http://blog.csdn.net/watchnight/article/details/4987065]http://blog.csdn.net/watchnight/article/details/4987065[/url]rnrn文中的第一张示意图让人一目了然,可惜是日文版。用Visio临摹了一下,作了一张英文版以方便大家参考。版权归原作者和Oracle所有。rnrn[img=https://img-bbs.csdn.net/upload/201309/04/1378257803_860055.png][/img]rnrn原文发表于:[url=http://evis.me/2013/08/memory-areas-of-java-process/]http://evis.me/2013/08/memory-areas-of-java-process/[/url]
Linux进程与内存分配
进程     进程是由内核定义的抽象实体,该实体分配用以执行程序的各项系统资源,是拥有资源的基本单位。从内核的角度来看,进程由用户内存空间和一系列内核数据结构组成,其中用户内存空间包含程序代码及代码所使用的变量(程序段和数据段),而内核数据结构则用于维护进程状态信息。     每个进程都有一个进程号,用以标识系统中的某个进程。Linux内核限制进程号小于等于32767,一旦进程号达到32767...
进程概述和内存分配
进程概述和内存分配 本文是作者阅读TLPI(The Linux Programer Interface的总结),为了突出重点,避免一刀砍,我不会过多的去介绍基本的概念和用法,我重点会去介绍原理和细节。因此对于本文的读者,至少要求读过APUE,或者是实际有写过相关代码的程序员,因为知识有点零散,所以我会尽可能以FAQ的形式呈现给读者。 进程一个进程的内存布局是什么样的?每个进程所所分配的内存由很多
操作系统:进程的概念和与程序的区别
进程的概念和与程序的区别 1、进程的定义 进程是允许某个并发执行的程序在某个数据集合上的运行过程。 进程是由正文段、用户数据段及进程控制块共同组成的执行环境。正文段存放被执行的机器指令,用户数据段存放进程在执行时直接进行操作的用户数据。进程控制块存放程序的运行环境,操作系统通过这些数据描述和管理进程。 2、进程的特征 进程是操作系统管理的实体,对应了程序的执行过程,具有以下几个特征。 并...
程序的内存分配
一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)― 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) ― 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(static)―,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束后有系统释放 4、文字常量区 ―常量字符串就是放在这里的。 程序结束后由系统释放 5、程序代码区―存放函数体的二进制代码。
程序内存分配
1 栈区(stack):与数据结构中的栈相似,由编译器自动分配最后自动释放。主要用于储存如下变量:函数的参数值,局部变量值,类似于栈,在内存上显示是地址连续。 2堆区(heap): 这是由程序员申请后分配的地址,不主动释放,可能会有OS回收。 3 全局和静态区:分配内存时类似于链表,内存的地址不连续。全局变量和静态变量存一起,未初始化的放一起。 4 文字常量区。 5 程序代码区。 引出的视频中字符...
操作系统之进程
操作系统课件关于数据和进程之类的cache  内存 cache控制器 内存  硬盘 (2级存储) 操作系统 (virtual memory) 通过地址映射(硬件支持TLB) 编程 (程序员)
操作系统——进程
在操作系统中,操作系统将内存,网络,文件系统抽象为资源的统一抽象表示。 1、什么是进程 进程就是进入内存中正在执行的程序。把进程当做一组元素组成的实体。进程包括两个部分,一部分是代码部分,另一部分是代码相关的数据集合。 进程控制块: 每一个进程,在内核中都对应着一个进程控制块。进程控制块中保存着进程的所有控制信息。 2、进程状态 进程的创建和终止:现在的操作系统都支持透
操作系统:进程
进程简单来说,进程就是运行的程序,有生命周期。进程的API Create: 创建进程 Destroy:结束进程 Wait:等待进程结束 Miscellaneous Control:挂起进程或者重启进程 Status:查看进程状态,运行时间,运行状态 创建进程的时候,操作系统需要完成下面几件事: 从disk将code和static data载入到memory中 为进程分配stack空间和heap空间
操作系统---进程
什么是进程:    进程是在并发的环境下,一个具有独立功能程序在某子数据集上的一次执行的过程    进程不是程序,它是程序的一次执行的过程 进程的6个属性:     动态性     结构性    独立性    并发性    制约性    共享性  进程的三种状态:     运行态,等待态,就绪态 什么是进程的调度:    进程调度就是从就绪队列里面选取一个进程到CPU中执
【操作系统之进程】
前言 操作系统的学习到了第三个阶段了,回顾前两个阶段的学习,从第一遍的泛读,第二遍的精读,到第三遍的做题,到最后的回顾课本,时间过得真快,这周马上就要参加考试了,说实话,心里还是有些小紧张的。先不说这个了,下面咱们进入正题。 核心进程定义: 把一个进程在一个程序集上的一次执行称为一个进程。 进程的特点 进程是动态的! 进程与程序的区别: 进程是动态的! 程序是静态的
相关热词 c#部署端口监听项目、 c#接口中的属性使用方法 c# 昨天 c#func链接匿名方法 c#怎么创建文件夹 c#从键盘接收空格 c#da/ad c#部门请假管理系统 c#服务器socket c# 默认的访问修饰符

相似问题

1
C#关闭进程,如何判断系统是否正在运行此进程
1
操作系统,进程同步实验的问题
0
Qt Qsharedmemory如何实现共享内存管理么?
1
死锁检测算法/分配资源给进程
1
不同进程切换的时候,操作系统触发什么事件?怎么防止别的进程切换或者获得操作?
2
java的线程同步机制中的同步与操作系统中进程同步的同步,两个意义是一样的吗?
0
WPF程序出现句柄泄漏:当前程序已使用了 Window 管理器对象的系统允许的所有句柄。
1
消息队列读取的时候需要判断目标进程程序使用的语言么?
1
拿到mep以后,从进程中拿当前函数分配的堆内存块地址列表怎么做
1
在进程堆内存分配的时候,oep和mep的关系是什么
1
根据程序进程中的oep找到主函数,再往后应该怎么才能遍历内存堆呢?
1
EBS根据应用进程查找对应程序
1
C#程序,检测360杀毒软件进程
5
如何在网站后台监控本机(或许是一台网站服务器)的系统状态,比如内存,流量,cpu,内存,进程等的信息
1
操作系统进程同步问题
3
Window操作系统为进程分配堆内存的问题
2
最近学到C语言堆,讲到了内存泄漏,但是不是很清楚,请给条明路
1
关于SQL server 2008占用内存的一个问题
1
操作系统中判断当前是否是安全状态和是否有死锁进程的算法比较类似,请说明二者之间的区别?
2
android 怎么读取其他进程的内存