SlideShare a Scribd company logo
MEMORY MANAGEMENT IN
AMOEBA
Presented by:
Mani Dumre
Ramesh Adhikari
Suman Lamsal
29 April 2019
Nepal College of Information & Technology
2
AMOEBA (DOS)
● The Amoeba distributed operating system project is a research
effort aimed at understanding how to connect computers
together in a seemless way.
● The researchers were motivated by the declining cost of CPU
chips.
● They saw the challenge of designing and implementing
software to manage the growing availability of computing
power in a convenient way.
● Their basic idea: users should not be aware of the number
or location of processors, file servers, or other
resources. The complete system should appear to be a
single computer.
3
MEMORY MANAGEMENT
● Entirely in physical memory .
● Segments contiguous in address space .
● Segments are objects .
● Any process with capability to segment could read/write it
(with proper permissions) .
● Shared memory communications (need not be on same
machine.
● Main memory file server .
● When a process is executing, all its segments are in
memory. There is no swapping or paging at present, thus
Amoeba can only run programs that fit in physical memory
4
MEMORY MODEL
● Amoeba has an extremely simple memory model.
● A process can have any number of segments.
● They can be located wherever it wants in the process’s virtual
address space.
● The virtual address spaces in Amoeba are constructed from
segments.
● Segments are not swapped or paged, so a process must be
entirely memory resident to run.
● Although the hardware MMU is used, each segment is stored
contiguously in memory.
5
MEMORY MODEL cont...
● This design was done for three reasons: Performance,
Simplicity, Economics.
● Having a process entirely in memory all the time makes RPC
go faster.
● This design has allowed Amoeba to achieve extremely high
transfer rates for large RPC’s
● Not having paging or swapping makes the system considerably
simpler and makes the kernel smaller and more feasible.
● Memory is becoming so cheap that within a few years, all
Amoeba machines will probably have tens of megabytes of it.
6
SEGMENTS
● A segment is a contigous block of memory that can contain
code or data.
● Each segment has a capability that permits its holder to perform
operations on int, such as reading and writing.
● A segment is somewhat like an in-core file, with similar
properties.
● Segments cannot be swapped or paged.
7
SEGMENTS Cont...
● When a segment is created it is given an initial value. This size
may change during the process execution.
● The segment may also given initial value either from another
segment or from a file.
● Processes have several calls available to them for managing
segments.
● Most important among these is the ability to create, read and
write segments.
● When a segment is created, the caller gets back a capability for
it.
● This capability is used for all other calls involving the segment.
8
SEGMENT Cont...
● A main memory file server can be constructed using segments
because of their read and write properties.
● The server creates a segment as large as it can.
● This segment will be used as a simulated disk.
● The server then formats the segment as a file system, putting in
whatever data structures it needs to keep track of the files.
● After that, it is open for business, accepting and processing
requests from clients.
9
MAPPED SEGMENTS
● When a process is started, it must have at least one segment.
● Once it is running, a process can create additional segments
and map them into its address space at any unused virtual
address.
10
S
D
T
S D
T
Process virtual address
space
Memory segments
A process with three segments mapped into its virtual address space.
11
UNMAPPED SEGMENTS
● A process can also unmap segments.
● A process can specify a range of virtual addresses and request
that the range be unmapped.
● When a segment is unmapped a capability is returned, so the
segment may still be accessed, or even be remapped .
12
Advantage & Disadvantages
● The primary advantage of this scheme is
simplicity and high performance
● The primary disadvantage is that it is not
possible to run programs larger than physical
memory.
13
References
● Distributed Operating Systems – By Andrew S.
Tanenbaum
● Amoeba: An Overview of a Distributed Operating
System. By Eric W. Lund - March 29, 1998
● https://en.wikipedia.org/wiki
Amoeba_(operating_system)
● http://indbooks.in/mirror1/?p=355336
14
Thank You!

More Related Content

What's hot

program partitioning and scheduling IN Advanced Computer Architecture
program partitioning and scheduling  IN Advanced Computer Architectureprogram partitioning and scheduling  IN Advanced Computer Architecture
program partitioning and scheduling IN Advanced Computer Architecture
Pankaj Kumar Jain
 
Amoeba
AmoebaAmoeba
Distributed shred memory architecture
Distributed shred memory architectureDistributed shred memory architecture
Distributed shred memory architecture
Maulik Togadiya
 
Distributed Operating System_1
Distributed Operating System_1Distributed Operating System_1
Distributed Operating System_1
Dr Sandeep Kumar Poonia
 
Distributed operating system amoeba case study
Distributed operating system  amoeba case studyDistributed operating system  amoeba case study
Distributed operating system amoeba case study
RamuAryan
 
Processor allocation in Distributed Systems
Processor allocation in Distributed SystemsProcessor allocation in Distributed Systems
Processor allocation in Distributed Systems
Ritu Ranjan Shrivastwa
 
Memory management
Memory managementMemory management
Memory management
cpjcollege
 
Chorus - Distributed Operating System [ case study ]
Chorus - Distributed Operating System [ case study ]Chorus - Distributed Operating System [ case study ]
Chorus - Distributed Operating System [ case study ]
Akhil Nadh PC
 
Distributed File Systems
Distributed File Systems Distributed File Systems
Distributed File Systems
Maurvi04
 
Advanced computer architechture -Memory Hierarchies and its Properties and Type
Advanced computer architechture -Memory Hierarchies and its Properties and TypeAdvanced computer architechture -Memory Hierarchies and its Properties and Type
Advanced computer architechture -Memory Hierarchies and its Properties and Type
LalfakawmaKh
 
Parallel computing
Parallel computingParallel computing
Parallel computing
Vinay Gupta
 
Multi processor scheduling
Multi  processor schedulingMulti  processor scheduling
Multi processor scheduling
Shashank Kapoor
 
Introduction to distributed file systems
Introduction to distributed file systemsIntroduction to distributed file systems
Introduction to distributed file systems
Viet-Trung TRAN
 
Contiguous Memory Allocation.ppt
Contiguous Memory Allocation.pptContiguous Memory Allocation.ppt
Contiguous Memory Allocation.ppt
infomerlin
 
Chapter 2: Operating System Structures
Chapter 2: Operating System StructuresChapter 2: Operating System Structures
Chapter 2: Operating System Structures
Shafaan Khaliq Bhatti
 
contiguous memory allocation.pptx
contiguous memory allocation.pptxcontiguous memory allocation.pptx
contiguous memory allocation.pptx
Rajapriya82
 
Limitations of memory system performance
Limitations of memory system performanceLimitations of memory system performance
Limitations of memory system performance
Syed Zaid Irshad
 
Introduction to Parallel Computing
Introduction to Parallel ComputingIntroduction to Parallel Computing
Introduction to Parallel Computing
Roshan Karunarathna
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
Mr SMAK
 
CUDA Architecture
CUDA ArchitectureCUDA Architecture
CUDA Architecture
Dr Shashikant Athawale
 

What's hot (20)

program partitioning and scheduling IN Advanced Computer Architecture
program partitioning and scheduling  IN Advanced Computer Architectureprogram partitioning and scheduling  IN Advanced Computer Architecture
program partitioning and scheduling IN Advanced Computer Architecture
 
Amoeba
AmoebaAmoeba
Amoeba
 
Distributed shred memory architecture
Distributed shred memory architectureDistributed shred memory architecture
Distributed shred memory architecture
 
Distributed Operating System_1
Distributed Operating System_1Distributed Operating System_1
Distributed Operating System_1
 
Distributed operating system amoeba case study
Distributed operating system  amoeba case studyDistributed operating system  amoeba case study
Distributed operating system amoeba case study
 
Processor allocation in Distributed Systems
Processor allocation in Distributed SystemsProcessor allocation in Distributed Systems
Processor allocation in Distributed Systems
 
Memory management
Memory managementMemory management
Memory management
 
Chorus - Distributed Operating System [ case study ]
Chorus - Distributed Operating System [ case study ]Chorus - Distributed Operating System [ case study ]
Chorus - Distributed Operating System [ case study ]
 
Distributed File Systems
Distributed File Systems Distributed File Systems
Distributed File Systems
 
Advanced computer architechture -Memory Hierarchies and its Properties and Type
Advanced computer architechture -Memory Hierarchies and its Properties and TypeAdvanced computer architechture -Memory Hierarchies and its Properties and Type
Advanced computer architechture -Memory Hierarchies and its Properties and Type
 
Parallel computing
Parallel computingParallel computing
Parallel computing
 
Multi processor scheduling
Multi  processor schedulingMulti  processor scheduling
Multi processor scheduling
 
Introduction to distributed file systems
Introduction to distributed file systemsIntroduction to distributed file systems
Introduction to distributed file systems
 
Contiguous Memory Allocation.ppt
Contiguous Memory Allocation.pptContiguous Memory Allocation.ppt
Contiguous Memory Allocation.ppt
 
Chapter 2: Operating System Structures
Chapter 2: Operating System StructuresChapter 2: Operating System Structures
Chapter 2: Operating System Structures
 
contiguous memory allocation.pptx
contiguous memory allocation.pptxcontiguous memory allocation.pptx
contiguous memory allocation.pptx
 
Limitations of memory system performance
Limitations of memory system performanceLimitations of memory system performance
Limitations of memory system performance
 
Introduction to Parallel Computing
Introduction to Parallel ComputingIntroduction to Parallel Computing
Introduction to Parallel Computing
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
 
CUDA Architecture
CUDA ArchitectureCUDA Architecture
CUDA Architecture
 

Similar to Memory Management in Amoeba

New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
sandya veduri
 
Memory Management
Memory ManagementMemory Management
Memory Management
lavanya marichamy
 
M20CA1030_391_2_Part2.pptx
M20CA1030_391_2_Part2.pptxM20CA1030_391_2_Part2.pptx
M20CA1030_391_2_Part2.pptx
HarikishnaKNHk
 
Storage management
Storage managementStorage management
Storage management
Atul Sharma
 
operating systems module 4 engineering.pptx
operating systems module 4 engineering.pptxoperating systems module 4 engineering.pptx
operating systems module 4 engineering.pptx
examlab57
 
Paging +Algorithem+Segmentation+memory management
Paging +Algorithem+Segmentation+memory managementPaging +Algorithem+Segmentation+memory management
Paging +Algorithem+Segmentation+memory management
kazim Hussain
 
Software Design for Persistent Memory Systems
Software Design for Persistent Memory SystemsSoftware Design for Persistent Memory Systems
Software Design for Persistent Memory Systems
C4Media
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OS
Kumar Pritam
 
Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)
Subhajit Sahu
 
UNIT-2 OS.pptx
UNIT-2 OS.pptxUNIT-2 OS.pptx
UNIT-2 OS.pptx
ssusera387fd1
 
PGAS Programming Model
PGAS Programming ModelPGAS Programming Model
PGAS Programming Model
ch adnan
 
Os unit 2
Os unit 2Os unit 2
Os unit 2
Arnav Chowdhury
 
Segmentation
SegmentationSegmentation
Segmentation
Md. Tanvir Hossain
 
Ch4 memory management
Ch4 memory managementCh4 memory management
Ch4 memory management
Bullz Musetsho
 
Memory management ppt
Memory management pptMemory management ppt
Memory management ppt
ManishaJha43
 
Linux Memory Basics for SysAdmins - ChinaNetCloud Training
Linux Memory Basics for SysAdmins - ChinaNetCloud TrainingLinux Memory Basics for SysAdmins - ChinaNetCloud Training
Linux Memory Basics for SysAdmins - ChinaNetCloud Training
ChinaNetCloud
 
Memory management
Memory managementMemory management
Memory management
Rasi123
 
Memory comp
Memory compMemory comp
Memory comp
Mohansonale1
 
CSE2010- Module 4 V1.pptx
CSE2010- Module 4 V1.pptxCSE2010- Module 4 V1.pptx
CSE2010- Module 4 V1.pptx
MadhuraK13
 
Power Point Presentation on Virtual Memory.ppt
Power Point Presentation on Virtual Memory.pptPower Point Presentation on Virtual Memory.ppt
Power Point Presentation on Virtual Memory.ppt
RahulRaj395610
 

Similar to Memory Management in Amoeba (20)

New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
 
Memory Management
Memory ManagementMemory Management
Memory Management
 
M20CA1030_391_2_Part2.pptx
M20CA1030_391_2_Part2.pptxM20CA1030_391_2_Part2.pptx
M20CA1030_391_2_Part2.pptx
 
Storage management
Storage managementStorage management
Storage management
 
operating systems module 4 engineering.pptx
operating systems module 4 engineering.pptxoperating systems module 4 engineering.pptx
operating systems module 4 engineering.pptx
 
Paging +Algorithem+Segmentation+memory management
Paging +Algorithem+Segmentation+memory managementPaging +Algorithem+Segmentation+memory management
Paging +Algorithem+Segmentation+memory management
 
Software Design for Persistent Memory Systems
Software Design for Persistent Memory SystemsSoftware Design for Persistent Memory Systems
Software Design for Persistent Memory Systems
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OS
 
Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)
 
UNIT-2 OS.pptx
UNIT-2 OS.pptxUNIT-2 OS.pptx
UNIT-2 OS.pptx
 
PGAS Programming Model
PGAS Programming ModelPGAS Programming Model
PGAS Programming Model
 
Os unit 2
Os unit 2Os unit 2
Os unit 2
 
Segmentation
SegmentationSegmentation
Segmentation
 
Ch4 memory management
Ch4 memory managementCh4 memory management
Ch4 memory management
 
Memory management ppt
Memory management pptMemory management ppt
Memory management ppt
 
Linux Memory Basics for SysAdmins - ChinaNetCloud Training
Linux Memory Basics for SysAdmins - ChinaNetCloud TrainingLinux Memory Basics for SysAdmins - ChinaNetCloud Training
Linux Memory Basics for SysAdmins - ChinaNetCloud Training
 
Memory management
Memory managementMemory management
Memory management
 
Memory comp
Memory compMemory comp
Memory comp
 
CSE2010- Module 4 V1.pptx
CSE2010- Module 4 V1.pptxCSE2010- Module 4 V1.pptx
CSE2010- Module 4 V1.pptx
 
Power Point Presentation on Virtual Memory.ppt
Power Point Presentation on Virtual Memory.pptPower Point Presentation on Virtual Memory.ppt
Power Point Presentation on Virtual Memory.ppt
 

Recently uploaded

みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdfAI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
Techgropse Pvt.Ltd.
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
CAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on BlockchainCAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on Blockchain
Claudio Di Ciccio
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 

Recently uploaded (20)

みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdfAI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdf
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
CAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on BlockchainCAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on Blockchain
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 

Memory Management in Amoeba

  • 1. MEMORY MANAGEMENT IN AMOEBA Presented by: Mani Dumre Ramesh Adhikari Suman Lamsal 29 April 2019 Nepal College of Information & Technology
  • 2. 2 AMOEBA (DOS) ● The Amoeba distributed operating system project is a research effort aimed at understanding how to connect computers together in a seemless way. ● The researchers were motivated by the declining cost of CPU chips. ● They saw the challenge of designing and implementing software to manage the growing availability of computing power in a convenient way. ● Their basic idea: users should not be aware of the number or location of processors, file servers, or other resources. The complete system should appear to be a single computer.
  • 3. 3 MEMORY MANAGEMENT ● Entirely in physical memory . ● Segments contiguous in address space . ● Segments are objects . ● Any process with capability to segment could read/write it (with proper permissions) . ● Shared memory communications (need not be on same machine. ● Main memory file server . ● When a process is executing, all its segments are in memory. There is no swapping or paging at present, thus Amoeba can only run programs that fit in physical memory
  • 4. 4 MEMORY MODEL ● Amoeba has an extremely simple memory model. ● A process can have any number of segments. ● They can be located wherever it wants in the process’s virtual address space. ● The virtual address spaces in Amoeba are constructed from segments. ● Segments are not swapped or paged, so a process must be entirely memory resident to run. ● Although the hardware MMU is used, each segment is stored contiguously in memory.
  • 5. 5 MEMORY MODEL cont... ● This design was done for three reasons: Performance, Simplicity, Economics. ● Having a process entirely in memory all the time makes RPC go faster. ● This design has allowed Amoeba to achieve extremely high transfer rates for large RPC’s ● Not having paging or swapping makes the system considerably simpler and makes the kernel smaller and more feasible. ● Memory is becoming so cheap that within a few years, all Amoeba machines will probably have tens of megabytes of it.
  • 6. 6 SEGMENTS ● A segment is a contigous block of memory that can contain code or data. ● Each segment has a capability that permits its holder to perform operations on int, such as reading and writing. ● A segment is somewhat like an in-core file, with similar properties. ● Segments cannot be swapped or paged.
  • 7. 7 SEGMENTS Cont... ● When a segment is created it is given an initial value. This size may change during the process execution. ● The segment may also given initial value either from another segment or from a file. ● Processes have several calls available to them for managing segments. ● Most important among these is the ability to create, read and write segments. ● When a segment is created, the caller gets back a capability for it. ● This capability is used for all other calls involving the segment.
  • 8. 8 SEGMENT Cont... ● A main memory file server can be constructed using segments because of their read and write properties. ● The server creates a segment as large as it can. ● This segment will be used as a simulated disk. ● The server then formats the segment as a file system, putting in whatever data structures it needs to keep track of the files. ● After that, it is open for business, accepting and processing requests from clients.
  • 9. 9 MAPPED SEGMENTS ● When a process is started, it must have at least one segment. ● Once it is running, a process can create additional segments and map them into its address space at any unused virtual address.
  • 10. 10 S D T S D T Process virtual address space Memory segments A process with three segments mapped into its virtual address space.
  • 11. 11 UNMAPPED SEGMENTS ● A process can also unmap segments. ● A process can specify a range of virtual addresses and request that the range be unmapped. ● When a segment is unmapped a capability is returned, so the segment may still be accessed, or even be remapped .
  • 12. 12 Advantage & Disadvantages ● The primary advantage of this scheme is simplicity and high performance ● The primary disadvantage is that it is not possible to run programs larger than physical memory.
  • 13. 13 References ● Distributed Operating Systems – By Andrew S. Tanenbaum ● Amoeba: An Overview of a Distributed Operating System. By Eric W. Lund - March 29, 1998 ● https://en.wikipedia.org/wiki Amoeba_(operating_system) ● http://indbooks.in/mirror1/?p=355336