DROD Koifman Eran Egri Ozi Supervisor: Alexander Arlievsky.

Slides:



Advertisements
Similar presentations
Chapter 2 Operating System Overview Operating Systems: Internals and Design Principles, 6/E William Stallings.
Advertisements

Department of Computer Science and Engineering University of Washington Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.
A Comprehensive Web Application Development and Deployment Platform.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Perl Practical Extraction and Report Language Senior Projects II Jeff Wilson.
Computer Systems/Operating Systems - Class 8
Modelling Feature Interaction Patterns in Nokia Mobile Phones using Coloured Petri Nets and Design/CPN Louise Lorentsen University of Aarhus Antti-Pekka.
Task Scheduling and Distribution System Saeed Mahameed, Hani Ayoub Electrical Engineering Department, Technion – Israel Institute of Technology
Supervisor : Gil Zussman Dror Barash Eran Golani.
Operating System - Overview Lecture 2. OPERATING SYSTEM STRUCTURES Main componants of an O/S Process Management Main Memory Management File Management.
L ocal I nformation S ervice By: Uri Gold & Kadan Haba Supervisors: Lev Rechnik & Alexander Arlievsky.
INTRODUCTION OS/2 was initially designed to extend the capabilities of DOS by IBM and Microsoft Corporations. To create a single industry-standard operating.
CompuNet Grid Computing Milena Natanov Keren Kotlovsky Project Supervisor: Zvika Berkovich Lab Chief Engineer: Dr. Ilana David Spring, /
The Procedure Abstraction Part I: Basics Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved. Students enrolled in Comp 412.
(NHA) The Laboratory of Computer Communication and Networking Network Host Analyzer.
Chapter 3.7 Memory and I/O Systems. 2 Memory Management Only applies to languages with explicit memory management (C or C++) Memory problems are one of.
Course Map The Java Programming Language Basics Object-Oriented Programming Exception Handling Graphical User Interfaces and Applets Multithreading Communications.
Chapter 6 Implementing Processes, Threads, and Resources.
What is adaptive web technology?  There is an increasingly large demand for software systems which are able to operate effectively in dynamic environments.
SQL Forms Engine Koifman Eran Egri Ozi Supervisor: Ilana David.
Automation Repository - QTP Tutorials Made Easy The Zero th Step TEST AUTOMATION AND QTP.
Application for Internet Radio Directory 19/06/2012 Industrial Project (234313) Kickoff Meeting Supervisors : Oren Somekh, Nadav Golbandi Students : Moran.
Programming Handheld and Mobile devices 1 Programming of Handheld and Mobile Devices Lecture 19 Microsoft’s Approach 1 –.NET Mobile Framework part 2 Rob.
Slide 6-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 6.
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Operating System Overview
ASP.NET  ASP.NET is a web development platform, which provides a programming model, a comprehensive software infrastructure and various services required.
The Procedure Abstraction Part I: Basics Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved. Students enrolled in Comp 412.
COMP 410 & Sky.NET May 2 nd, What is COMP 410? Forming an independent company The customer The planning Learning teamwork.
The Architecture of Secure Systems Jim Alves-Foss Laboratory for Applied Logic Department of Computer Science University of Idaho By, Nagaashwini Katta.
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
XML Registries Source: Java TM API for XML Registries Specification.
INDUSTRIAL PROJECT (234313) ULTRASOUND SCANNER EMBEDDED ONLINE PROFILER Students: Liat Peterfreund, Hagay Myr Supervisor: Mr. Tomer Gal (GE Healthcare)
Patterns and Reuse. Patterns Reuse of Analysis and Design.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
18 April 2005CSci 210 Spring Design Patterns 1 CSci 210.
What Is Java? According to Sun in a white paper: Java: A simple, object-oriented, network-savvy, interpreted, robust, secure, architecture-neutral, portable,
CPSC 372 John D. McGregor Module 3 Session 1 Architecture.
Scott Ferguson Section 1
EXTENSIBILITY, SAFETY AND PERFORMANCE IN THE SPIN OPERATING SYSTEM
TIDEN Node Management Texas Integrated Data Exchange Node Partnered with.
1 Threads, SMP, and Microkernels Chapter Multithreading Operating system supports multiple threads of execution within a single process MS-DOS.
Android System Security Xinming Ou. Android System Basics An open-source operating system for mobile devices (AOSP, led by Google) – Consists of a base.
Design of an Integrated Robot Simulator for Learning Applications Brendon Wilson April 15th, 1999.
PRESENTATION DAY Group ID: gp09-cmg Speaker: Matthew Albers RFID APPLICATION DEVELOPMENT SUITE.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
DØ Offline Reconstruction and Analysis Control Framework J.Kowalkowski, H.Greenlee, Q.Li, S.Protopopescu, G.Watts, V.White, J.Yu.
IPS Infrastructure Technological Overview of Work Done.
What is a Process ? A program in execution.
FlowLevel Client, server & elements monitoring and controlling system Message Include End Dial Start.
CSCI/CMPE 4334 Operating Systems Review: Exam 1 1.
Accelerometer based motion gestures for mobile devices Presented by – Neel Parikh Advisor Committee members Dr. Chris Pollett Dr. Robert Chun Dr. Mark.
High degree of user interaction Interactive Systems: Model View Controller Presentation-abstraction-control.
Technician Table Editor Company: DVTel Academic advisor: Professor Ehud Gudes Technical advisor: Menny Even Danan Team: Olga Peled Doron Avinoam.
Some Great Open Source Intrusion Detection Systems (IDSs)
Code Editing Lesson 2.
Chapter 3: Windows7 Part 5.
Android System Security
Java Beans Sagun Dhakhwa.
Chapter 3: Windows7 Part 5.
Assignment 4 For this assignment refer to the notes on MATLAB from an MIT course that you can find here (or at the original website, lectures 14, 15, 16).
Analysis models and design models
Threads and Concurrency
The Basic Usage and The Event Handling in Glade.
WELCOME TO SEMINAR.
Introducing Java.
Outline Operating System Organization Operating System Examples
Presentation transcript:

DROD Koifman Eran Egri Ozi Supervisor: Alexander Arlievsky

The Problem Open source projects developed by independent developers tend to be “Spaghetti” projects. Traditional games define a closed set of features and object. In order to add a feature or a new object the “traditional” game’s source code must be altered.

Project Goals Creating a new.NET platform for the game. Creating a generic platform which will enable the users to assimilate new code into the platform without changing the source code. Develop a platform which will not be game specific.

Solution Overview Creating a base infrastructure which will provide common features and services for external objects. Creating objects which will be assimilated into the infrastructure at run-time. The assimilation does not require changing the infrastructure source code. Creating a simple interface which will enable the user to add new features and objects to the infrastructure.

Solution Overview Implementing DROD object and features in order to demonstrate the infrastructures capabilities. Creating the DROD 2D world in which the DROD game will be played.

Problems And Solutions Creating a new unknown type of object and assimilating it into the infrastructure. Factory object. Using the.NET reflection. Inheritance from a basic object known to the infrastructure (BaseObject).

Intercommunication Communicating between the infrastructure and the unknown objects. Communicating between the unknown objects. Message based communication. Each objects will contain a mailbox. Creating an engine which will supervise the flow of messages.

Creating The 2D World Generically creating and assimilating different 2D worlds into the infrastructure without changing the infrastructure’s source code. Screen Creator object. Screen Sequence object. Map Manager object. Screen Manager object.

Object Behavior Creating new feature and behaviors and ascribe a certain behavior to an object. Dynamically changing objects’ behaviors at run-time. Handlers associated to messages. Handler Manager object. Associating preliminary behavior to objects using a simple text interface.

Finding Unknown Objects Searching an unknown object in the infrastructure at run- time. Searching according to features. Searching according to object type. Yellow Pages object. Unique ID given at creation. Categorization according to implemented interfaces.

Saving And Restoring States Saving the current state of the infrastructure and the unknown objects within. Restoring the state and the objects at a latter time. Serialization mechanism. Multiple file usage. Clearing the current state and restoring the saved state.

Multi Threading Creating a multi- threaded infrastructure. Protecting critical sections. Threads for players, decoration, monsters, and engine. Mutex protection on the infrastructure critical data such as Map Manager object.

Timing And Priorities Creating object priorities. Creating Message priorities. Manager and supervise the timing in the infrastructure. Message priorities in the mailbox. Object priorities according to implemented interfaces such as “IPlayer”, “IDecor”. Timing using the Engine object.

Future Development 3D Engine. Network support. Input devices support such as joystick. Editor environment which will create new worlds.

Older Development Environments Versus.NET Reflection mechanism in.NET. Portability in.NET. Extensive GUI support in.NET versus MFC. Extensive object collections in.NET versus STL. Problems with the serialization mechanism.