An Overview of Palm OS n Designed for special hardware –small screen ( 160 x 160 ) –less processing power than desktop PCs –quick turnaround expected –limited.

Slides:



Advertisements
Similar presentations
Memory.
Advertisements

More on File Management
Palm OS Frederick Penrose, Kevin Wong, and Hoan Do.
File Systems.
Report On Palm OS Report On Palm OS Ancita J.Vaz ID# ID#
File System Implementation: beyond the user’s view A possible file system layout on a disk.
File System Implementation CSCI 444/544 Operating Systems Fall 2008.
Memory Management.
6/24/2015B.RamamurthyPage 1 File System B. Ramamurthy.
1 File Management in Representative Operating Systems.
Virtual Memory CS 147 October 30, 2007 Chris Stewart.
Main Memory. Background Program must be brought (from disk) into memory and placed within a process for it to be run Main memory and registers are only.
03/05/2008CSCI 315 Operating Systems Design1 Memory Management Notice: The slides for this lecture have been largely based on those accompanying the textbook.
7/15/2015B.RamamurthyPage 1 File System B. Ramamurthy.
Operating Systems.
Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access memory.
File System. NET+OS 6 File System Architecture Design Goals File System Layer Design Storage Services Layer Design RAM Services Layer Design Flash Services.
Virtual Memory Chantha Thoeun. Overview  Purpose:  Use the hard disk as an extension of RAM.  Increase the available address space of a process. 
Chapter 3.1:Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access.
File Systems (1). Readings r Silbershatz et al: 10.1,10.2,
1Fall 2008, Chapter 11 Disk Hardware Arm can move in and out Read / write head can access a ring of data as the disk rotates Disk consists of one or more.
Computer Architecture and Operating Systems CS 3230: Operating System Section Lecture OS-7 Memory Management (1) Department of Computer Science and Software.
Palm OS Jeremy Etzkorn Paul Rutschky Adam Lee Amit Bhatia Tony Picarazzi.
NETW3005 File System Interface. Reading For this lecture, you should have read Chapter 10 (Sections 1-5) and Chapter 11 (Sections 1-4). NETW3005 (Operating.
File Systems CSCI What is a file? A file is information that is stored on disks or other external media.
Background Program must be brought into memory and placed within a process for it to be run. Input queue – collection of processes on the disk that are.
CSC 322 Operating Systems Concepts Lecture - 20: by Ahmed Mumtaz Mustehsan Special Thanks To: Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
File Management Chapter 12. File Management File management system is considered part of the operating system Input to applications is by means of a file.
Palm OS Christine Jones CS 550 Section 1 Fall 2005.
Main Memory. Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure of the Page Table Segmentation Example: The.
CE Operating Systems Lecture 17 File systems – interface and implementation.
Swap Space and Other Memory Management Issues Operating Systems: Internals and Design Principles.
File Systems. 2 What is a file? A repository for data Is long lasting (until explicitly deleted).
Copyright ©: Nahrstedt, Angrave, Abdelzaher, Caccamo1 Files and file allocation.
Lecture 10 Page 1 CS 111 Summer 2013 File Systems Control Structures A file is a named collection of information Primary roles of file system: – To store.
Palm OS emulator.
UNIX & Windows NT Name: Jing Bai ID: Date:8/28/00.
File Systems cs550 Operating Systems David Monismith.
Memory Management -Memory allocation -Garbage collection.
THE FILE SYSTEM Files long-term storage RAM short-term storage Programs, data, and text are all stored in files, which is stored on.
Palm OS CS 450 Section 3 Jason Kelske Matthew Jennings Stephen Jou Allan Topp Graham Kerster.
Virtual Memory Pranav Shah CS147 - Sin Min Lee. Concept of Virtual Memory Purpose of Virtual Memory - to use hard disk as an extension of RAM. Personal.
Background Program must be brought into memory and placed within a process for it to be run. Input queue – collection of processes on the disk that are.
FILE SYSTEM IMPLEMENTATION 1. 2 File-System Structure File structure Logical storage unit Collection of related information File system resides on secondary.
COMP091 – Operating Systems 1 Memory Management. Memory Management Terms Physical address –Actual address as seen by memory unit Logical address –Address.
Kernel Expanded version of Kodak’s AMX kernel Features –Uses Preemptive Priority Scheduling –Multithreading –Multitasking.
Memory Management Chapter 5 Advanced Operating System.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 8: Main Memory.
Introduction to Systems Programming (CS 0449)
Memory Management.
Chapter 11: File System Implementation
Operating Systems (CS 340 D)
Process Realization In OS
Filesystems.
Lecture 10: Buffer Manager and File Organization
CSCI206 - Computer Organization & Programming
Chapter 11: File System Implementation
File Systems Implementation
Memory Management Lectures notes from the text supplement by Siberschatz and Galvin Modified by B.Ramamurthy Chapter 8 11/24/2018.
Chapter 11: File System Implementation
File System B. Ramamurthy B.Ramamurthy 11/27/2018.
Memory Management Lectures notes from the text supplement by Siberschatz and Galvin Modified by B.Ramamurthy Chapter 9 12/1/2018.
Lecture 32 Syed Mansoor Sarwar
CS399 New Beginnings Jonathan Walpole.
Lecture 3: Main Memory.
PalmOS.
Chapter 16 File Management
Memory Management Lectures notes from the text supplement by Siberschatz and Galvin Modified by B.Ramamurthy Chapter 9 4/5/2019.
Chapter 11: File System Implementation
COMP755 Advanced Operating Systems
Presentation transcript:

An Overview of Palm OS n Designed for special hardware –small screen ( 160 x 160 ) –less processing power than desktop PCs –quick turnaround expected –limited memory ( 512k ~ 8MB ) –no disk drive or PCMCIA disk

The Appearance of a PalmPilot

System Architecture

Memory Orgnization n Motorola uses 32-bit addresses n External data bus is only 16 bits wide n ROM - stores the main suite of applications ( the OS itself) n RAM - stores additional and replacement applications & system extensions n RAM - dynamic RAM & storage RAM

Dynamic RAM n Served as temporary space for allocation n Analogous to the RAM installed in a typical desktop system n Is cleaned after reboot n Implement a single heap that provides memory for dynamic allocations( TCP/IP, IrDA, …)

Storage RAM n Holds nonvolatile user data ( appointments, to do lists, memos, address lists, … ) n Is accessed via calling the database manager or the resource manager n Analogous to the disk drive of a typical desktop system

Memory Chunks and Heaps n A chunk - contiguous memory between 1byte ~ 64 KB that has been allocated by the Palm OS memory manager n Each chunk resides in a heap n Memory manager allocates memory in the dynamic heap n Data manager allocates memory in the storage heap

Memory Heaps n Each heap has a unique heap ID n The heap with heap ID 0 is the dynamic heap n Only the dynamic heap is reinitialized through soft reset cycles

Movable / Nonmovable Chunks n Each chunk is referenced by a local ID n The local ID of a nonmovable chunk : the offset of the chunk from the base address of the card n The local ID of a movable chunk : the offset of the master pointer to the chunk from the base address of the card

The Memory Manager n The functions of the memory manager: –allocating new chunks –disposing of chunks –resizing of chunks –locking and unlocking chunks –compacting heaps when they become fragmented

Heap Structure n Master pointer table stores 32-bit pointer to movable chunks n Movable chunks are allocated at the beginning Heap Header Movable chunks Non-movable chunks Heap Master pointer table

Chunk Structure n Each chunk begins with an 8-byte header followed by that chunk’s data n Flags:sizeAdj flag: –high nibble : set for free chunk –low nibble : reqSize = size [this value] n size field( 3 bytes) –the size of the chunk, which is larger than the size requested by the application, including the chunk header itself

Chunk Structure(cont.) n Lock:owner byte –high nibble : the lock count, which is incremented when being locked –low nibble : the owner ID of the memory chunk n hOffset field( 3 bytes) –the distance from the master pointer to the chunk header, divided by two

The Data Manager n The database is analogous to disk n A database is a collection of records n A record is mapped to a memory chunk n A database accesses its records by storing their local ID’s n An application requests a particular record in a database by index

The Resource Manager n Resources : store the UI elements of an application, such as images, fonts, dialog layouts, … n Resource manager : Data manager with the additional ability of tagging each chunk of data with a unique resource type and resource ID

Application Structure n Single threaded n Event-driven n PilotMain() corresponds to main() in C n PilotMain -- Response to launch codes n An event loop in response of a normal launch

Flowchart of event handling

Developing Apps on Palm n Various development tools: –Code Warrior for Palm OS –Palm SDK (header files, documents, examples) –GCC –POSE - An open source Palm emulator runs on Windows, Mac and UNIX

Conclusion n The Palm OS provides a good platform for developing Palm apps n The Palm OS provides various libraries for communicating with PC’s n A good OS design is not necessarily having the most advanced feature, but having the best integration of the hardware

The End B 龔律全 B 卓聖堯