Slide 2 - 실시간 시스템 연구실 (Real Time System Lab.)

Download Report

Transcript Slide 2 - 실시간 시스템 연구실 (Real Time System Lab.)

통신 소프트웨어
(객체지향 모델링 및 분산 미들웨어 )
대학원 전자공학과
담당교수 : 강순주
4/6/2017
http://rtlab.knu.ac.kr/
Slide 1
Today’s Presentation
•Technology Trends in 20 ~ 21 Centuries
• Introduction to Ubiquitous Computing
•Lecture Introduction
4/6/2017
http://rtlab.knu.ac.kr/
Slide 2
Once upon a time ...
MAINFRAME
• one powerful computer
• centralized application
• dumb terminals
• proprietary solution
Slide 3
~1970 : Mainframe Computing Era.
H/W
O.S.
IBM360/370
CMS
VAX11/780
VMS
CYBER170
NOS
C.E.,
S.E.,
A.P.
...
HP3000
4/6/2017
HPOS
http://rtlab.knu.ac.kr/
Slide 4
1975~1985 :Open Computing Era.
H/W
O.S.
C.E., S.E.,
A.P.
IBM360/370
M.F.
DEC VAX
CRAY
SUN
W.S.
UNIX
HP
DEC
P.C.
4/6/2017
IBM PC
MSDOS
http://rtlab.knu.ac.kr/
MS-Windows
Slide 5
1985~1995 : Server/Client Computing Era.
servers
clients
C.E
S.E
Network
(Internet)
A.P.
Intel CPU
(i86,pantium)
RISC CPU
(MIPS,Alpa,PowerPC,PARISC) UNIX,WindowsNT
4/6/2017
http://rtlab.knu.ac.kr/
MS-Windows
(Fatware)
Slide 6
1996~2000 : Network Computing(NC) Era.
announced Java by SUN
WWW servers
a
WWW Browsers
b
C.E
a
c
S.E
Network
(Internet)
???
A.P.
Application Programs
attache on HTML documents
(Java Applets)
4/6/2017
Content
Provider
http://rtlab.knu.ac.kr/
Slide 7
2000 ~ : Ubiquitous Computing Era.
Virtual Services
가상
학교
수퍼컴퓨
팅
서버
Mobile Clients
원격
강의
디지탈
도서관
서버
영상회의
서버
전자
상거래
Virtualware
Information
Super
HighWay
트랜잭션
서버
...
...
정보가전,
디지탈 방송
Smart
client
Digital TV
정보제공
업자
2D/3D/V
R
서버
전자상거래
4/6/2017
사용자
http://rtlab.knu.ac.kr/
사용자/장비
이동성
원격
계측제어
Slide 8
Fiddler’s Predictions for the Next Ten
Years (2010)
•End of the “Age of the PC”
•Lots of Exciting Applications
•Development Will Continue To Be Hard
• Even as we and our competitors continue to make
incredible efforts
•Chips - No predictions
•MEMS / Nano-technology & Sensors Will Impact Us
4/6/2017
http://rtlab.knu.ac.kr/
Slide 9
Fundamental Principles
• Computers are, and will be, everywhere
• The world itself is becoming more intelligent
• Our infrastructure will have major software
content
• Most of our access to information will be
through embedded systems
• Economics will inexorably drive deployment of
embedded systems
• The Internet is one important factor in this
trend
• Reliability is a critical issue
• EVERY tech and mfg. business will need to
become good at embedded software
4/6/2017
http://rtlab.knu.ac.kr/
Slide 10
Why networked embedded systems?
• Technology is reaching a point where it can
significantly impact our everyday lives
– Low power processors and radios, MEMs and other
sensors
• Enable “orthogonal spikes of progress” in many
other fields
– Medical applications, understanding nature & more
– Intelligent environments, smart offices, optimized
assembly lines etc
– Many opportunities with existing technologies, many
things up to your imagination
• An interface to other disciplines
4/6/2017
http://rtlab.knu.ac.kr/
Slide 11
Applications in All Aspects of Life
Slide from Intel Presentation
4/6/2017
http://rtlab.knu.ac.kr/
Slide 12
What are Embedded Systems?
4/6/2017
http://rtlab.knu.ac.kr/
Slide 13
More Examples...
• Signal processing systems
– radar, sonar, real-time video, set-top boxes, DVD
players, medical equipment, residential gateways
• Mission critical systems
– avionics, space-craft control, nuclear plant control
• Distributed control
– network routers & switches, mass transit systems,
elevators in large buildings
• “Small” systems
– cellular phones, pagers, home appliances, toys, smart
cards, MP3 players, PDAs, digital cameras and
camcorders, sensors, smart badges
4/6/2017
http://rtlab.knu.ac.kr/
Slide 14
Why do we care? Some Market Tidbits...
• Specialized devices and information appliances are
replacing the generalist PC
– variety of forms: set-top boxes, fixed-screen phones,
smart mobile phones, PDAs, NCs, etc.
– IDC predicts that by 2002 > 50% of inter access
devices will be such into appliances and not PCs
• In 1997, 96% of internet access devices sold in the US were PCs
• By 2004, unit shipments will exceed those of PCs
• Traditional systems becoming dependent on
computation systems
– Modern cars: up to ~100 processors running complex
software
• engine & emissions control, stability & traction control,
diagnostics, gearless automatic transmission
• http://www.howstuffworks.com/car-computer.htm
• An indicator: where are the CPUs being used?
4/6/2017
http://rtlab.knu.ac.kr/
Slide 15
Where are the CPUs?
Estimated 98% of 8 Billion CPUs produced in 2000 used for
embedded apps
Where Are the Processors?
Where Has CS Focused?
Direct
2%
Robots Vehicles
6%
12%
Interactive
Computers
200M
per Year
In Vehicles
8.5B Parts
per Year
Servers,
etc.
Embedded
In Robots
Look for the CPUs…the Opportunities Will Follow!
4/6/2017
http://rtlab.knu.ac.kr/
16
Source: DARPA/IntelSlide
(Tennenhouse)
Typical Characteristics of Embedded
Systems
• Part of a larger system
– not a “computer with keyboard, display, etc.”
• HW & SW do application-specific function – not G.P.
– application is known a priori
– but definition and development concurrent
• Some degree of re-programmability is essential
– flexibility in upgrading, bug fixing, product differentiation,
product customization
• Interact (sense, manipulate, communicate) with the
external world
• Never terminate (ideally)
• Operation is time constrained: latency, throughput
• Other constraints: power, size, weight, heat, reliability etc.
• Increasingly high-performance (DSP) & networked
4/6/2017
http://rtlab.knu.ac.kr/
Slide 17
Key Recent Trends
• Increasing computation demands
– e.g. multimedia processing in set-top boxes, HDTV
• Increasingly networked
– to eliminate host, and remotely monitor/debug
– embedded Web servers
• e.g. Mercedes car with web server
• e.g web servers on wireless cameras
– embedded Java virtual machines
• e.g. Java ring, smart cards, printers
– cameras, disks etc. that sit directly on networks
• Increasing need for flexibility
– time-to-market under ever changing standards!
Need
careful
co-design
of
h/w
&
s/w!
4/6/2017
http://rtlab.knu.ac.kr/
Slide 18
“Traditional” Software Embedded
Systems = CPU + RTOS
4/6/2017
http://rtlab.knu.ac.kr/
Slide 19
“Traditional” Hardware Embedded
Systems = ASIC
ASIC Features
Area: 4.6 mm x 5.1 mm
Speed: 20 MHz @ 10 Mcps
Technology: HP 0.5 mm
Power: 16 mW - 120 mW
(mode dependent) @ 20
MHz, 3.3 V
Avg. Acquisition Time: 10 ms
to 300 ms
4/6/2017
http://rtlab.knu.ac.kr/
Slide 20
Embedded Microprocessor Evolution
•Embedded CPU cores are getting smaller; ~ 2mm2 for up to
400 mHz
• Less than 5% of CPU size
•Higher Performance by:
• Faster clock, deeper pipelines, branch prediction, ...
•Trend is towards higher integration of processors with:
• Devices that were on the board now on chip: “system on a
chip”
• Adding more compute power by add-on DSPs, ...
• Much larger L1 / L2 caches on silicon
4/6/2017
http://rtlab.knu.ac.kr/
Slide 21
Microprocessor Chaos
4/6/2017
http://rtlab.knu.ac.kr/
Slide 22
Modern Embedded Systems?
DSP
Code
Application
Specific Gates
Analog
I/O
Processor
Cores
Memory
• Embedded systems employ a combination of
– application-specific h/w (boards, ASICs, FPGAs etc.)
• performance, low power
– s/w on prog. processors: DSPs, mcontrollers etc.
• flexibility, complexity
– mechanical transducers and actuators
4/6/2017
http://rtlab.knu.ac.kr/
Slide 23
A Challenging Environment
4/6/2017
http://rtlab.knu.ac.kr/
Slide 24
Embedded Software Crisis
4/6/2017
http://rtlab.knu.ac.kr/
Slide 25
Embedded Software Development
Environement
4/6/2017
http://rtlab.knu.ac.kr/
Slide 26
Beyond Desktops/Servers
Embedded
Mobile
Location
Interactive
Sensor
Flight
Simulator
Active
badge
Wearable
4/6/2017
http://rtlab.knu.ac.kr/
Slide 27
Core Technologies to breed an Ubiquitous Engineer
-Object-Oriented Concept and Skill in OO language(Java)
-Operating Systems Internal(Linux,WinCe,RTOSs)
-HW/SW Co-design(VHDL,Micro-Processors,Signals and
Systems)
-Software and System
Engineering(Modeling,Design,Implementation,V&V)
-Distributed Systems and Middlewares(CORBA)
4/6/2017
http://rtlab.knu.ac.kr/
Slide 28
Any Question?
4/6/2017
http://rtlab.knu.ac.kr/
Slide 29
Syllabus
 Goal :
Deal with the concept of object-orientation and the method of
object-oriented modeling based on UML, and then, study about various
distributed middlewares such as CORBA, Jini,Space as well as modeling
some targets of distributed middleware architecture using UML
Tutorials on the main topics of relevance for the construction of
middleware for mobile environment, and selected interesting topics in
MANETs(Mobile ad hoc networks).
 Text :
Implementing Distributed Systems with Java and CORBA
Middleware for Network Eccentric and Mobile Applications
 Lecturing :
 Basic Concept Lecturing by Professor
Advanced Topic Presentation by Students
4/6/2017
http://rtlab.knu.ac.kr/
Slide 30
Textbooks
 Required:
 Implementing Distributed Systems with Java and
CORBA,M. Aleksy, A. Korthaus, M. Schader,
Springer,2005
 Middleware for Network Eccentric and Mobile
Applications,
B.
Garbinato,H.
Miranda,L.Rodrigues(Ed.),Springer,2009
 Additional readings
 Middleware
for
communications,
Q.H.
Mahmoud(Eds.), WILEY,2004
 Client/Server Programming with JAVA and
CORBA(2nd Edition), 1998
4/6/2017
http://rtlab.knu.ac.kr/
Slide 31
 Technical
Papers
Goals of this Course
• To study the development of distributed communication
software (with hands-on experience)
• To introduce the concept of software component, including
its relationship to the object-oriented programming
paradigm.
• To learn how to specify and design, using UML, the basic
building blocks present in component frameworks, including
events, properties, introspection and reflection,
persistence, and packaging.
• To introduce/compare/evaluate different distributed
component frameworks, including RPC,Java RMI, COM and
CORBA.
• To achieve an understanding of how components work in a
distributed computing environment.
4/6/2017
http://rtlab.knu.ac.kr/
Slide 32
Course Book
Foundations (lectures 2~3)
1. Conceptd of Distributed Systems and Middleware
2. Object-oriented concept & Modeling
1. Java & UML
Advanced services in CORBA (lecture 1~2)
1. Distributed object location
2. Concurrency control
3. Event channel
Socket & Middleware(lectures 1~2)
1. Computer Network
2. Types of Middleware
1. Socket, RPC
3. Object-Oriented Middleware
1. Java RMI, CORBA
Object-Oriented Middleware & CORBA(lectures
1.
2.
3.
4.
5.
6.
7.
CORBA Introduction
CORBA Basic (I)
CORBA Basic(II)
CORBA advanced(I)
CORBA advanced(II)
IIOP Internal
Services in CORBA
Middleware for MANETs(lecture 3~4)
1. Energy in Wireless Sensor Networks(WSN)
2. Programming WSN
3. Mobility Models for Systems Evaluation
4. Ah Hoc Routing
5. Protocols Basics
6. Routing Issues in Opportunistic Network
7. Wireless Mesh Network
8. Hybrid WSN
4~5)
Middleware for MANETs(lecture 3~4)
1.
2.
3.
4.
Gossip-Based Dissemination
Application Layer Multicast
Advanced Middleware(Publish/subscribe,tuple space)
Applications Issues.
Home Page for this Lecture
 Home Page : http://abeek.knu.ac.kr/
 강의 관리 시스템 사용시 주의 사항 :
1. 강의노트는 수업시간 이전에 download 해서 출력하여 지참할 것
2. 모든 과제물은 과제물 게시판에 Word 혹은 HWP 파일로 제출
3. 주의: 단위 숙제는 반드시 하나의 파일로 만들어야 하며 파일명은
{id}_{숙제번호}.{doc or hwp} 예: sjkang_03.doc
4/6/2017
http://rtlab.knu.ac.kr/
Slide 34
Modeling and Programming Environment
•Java:
-SUN JDK2.4 ~ with Eclips IDE
•UML :
- Eclips IDE or RT-UML by Ilogix, Artisan
•CORBA :
- Eclipse IDE based CORBA pluggin
-ORBit(mt),ORBit2, SUN CORBA in JDK 1.4
- RT-CORBA(ACE,..,etc)
•Tuple Space :
- Java Space or TSpace
•OS :
4/6/2017
http://rtlab.knu.ac.kr/
Slide 35