Download presentation
Presentation is loading. Please wait.
1
Topics on the presentation
JAVA is VM, development tools, language & packages Networking Embedded system & JAVA License and cost Author: Qi Wu
2
Applications on generic OS (Operating System)
Application 1 (ANSI C) Application 2 (C++) Application 3 (Pascal) Application X (VB) API (Application Programming Interface) OS kernel Software device drivers OS Hardware interfaces JAVA is VM, development tools, language & packages
3
Features of the architecture
API is much more dependent of an OS and/or selected hardware platform. Applications are written in different programming languages and connected with certain API. Performance/benchmark of an application is also affected by the OS and hardware platform. What will happen if the OS or hardware platform changed ? JAVA is VM, development tools, language & packages
4
Applications on generic OS (Operating System)
Application 1 (ANSI C) Application 2 (C++) Application 3 (Pascal) Application X (VB) To be updated API (Application Programming Interface) OS kernel Software device drivers OS Hardware interfaces JAVA is VM, development tools, language & packages
5
JAVA is VM, development tools, language & packages
Portability Selection of a OS or hardware platform is often requirement from big customer. Update of existing applications needs additional efforts and time. Maintain of applications becomes problem. JAVA is VM, development tools, language & packages
6
JAVA VM (Virtual Machine)
Application 1 (JAVA) Application 2 (JAVA) Application 3 (JAVA) Application X (JAVA) JAVA byte code JAVA VM Packages API (Application Programming Interface) OS kernel Software device drivers Hardware interfaces JAVA specifications VM producer’s job JAVA is VM, development tools, language & packages
7
Features of the architecture
VM is upward standard according to JAVA specification and downward specific to an OS Business strategy drives producer of an OS to release JAVA VM in some case. Some communities are also working hard on JAVA VM for different OS like Windows 95/98/NT/2000, Window CE, Linux, QNX... Application is written once and run everywhere (theoretically). More and more applications are written in JAVA and treated to be independent of certain OS. Performance/benchmark of an application is also affected by the OS, hardware platform and JAVA VM. Packages are collection of specified or often-used classes. Standard JAVA specification defines rich classes for diverse applications. JAVA is VM, development tools, language & packages
8
java.net.* and java.awt.* are important packages
Application 1 (JAVA) Application 2 (JAVA) Application 3 (JAVA) Application X (JAVA) JAVA byte code JAVA VM Packages (java.net.* java.awt.* ...) API TCP/IP GUI OS kernel Software device drivers Hardware interfaces JAVA specifications VM producer’s job JAVA is VM, development tools, language & packages
9
JDK (Java Development Kit)
JAVA is VM, development tools, language & packages
10
Sub-directories of JAVA 1.3 (Java 2) based on Sun’s Standard Edition
JDK 1.3 root directory bin include demo lib jre javac.exe --- compiler jdb.exe debugger java.exe Java VM appletviewer.exe .... src.jar --- packages .... JAVA is VM, development tools, language & packages
11
JAVA is VM, development tools, language & packages
Example 1: Welcome.java public class Welcome { public static void main(String[ ] args) { String greeting[ ] = new String[3]; greeting[0] = “Welcome to Hannover”; greeting[1] = “by Qi Wu”; greeting[2] = “on April 08, 2001”; for (int i = 0; i < greeting.length; ++i) System.out.println(greeting[i]); } JAVA is VM, development tools, language & packages
12
JAVA is VM, development tools, language & packages
Example 1: Welcome.java C:\JAVATEST>javac Welcome.java C:\JAVATEST>java Welcome.class ... Welcome to Hannover by Qi Wu on April 08, 2001 C:\JAVATEST>_ JAVA is VM, development tools, language & packages
13
Features of Java language
The concept of class dominates all Java Java is OOP Garbage collection Java Interface Easy to design, code and test Most data exchanges are based on reference ... JAVA is VM, development tools, language & packages
14
JAVA is VM, development tools, language & packages
Example 2: Welcome.java public class NewWelcome { public String getLine(String strArray[ ]) { return strArray[ 0] + “ “+ strArray[ 1] + “ “+ strArray[ 2]; } public class Welcome public Welcome { NewWelcome myNewWelcomeObject = new NewWelcome(); System.out.println( myNewWelcomeObject.getLine(greeting) ); public static void main(String[ ] args) { String greeting[ ] = new String[3]; greeting[0] = “Welcome to Hannover”; greeting[1] = “by Qi Wu”; greeting[2] = “on April 08, 2001”; Welcome myWelcomeObject = new Welcome(); JAVA is VM, development tools, language & packages
15
JAVA is VM, development tools, language & packages
What is class? A class is usually described as the template or blueprint from which the object is actually made. JAVA is VM, development tools, language & packages
16
Networking buzzwords Networking Internet EJB Intranet http Servlet
socket Applet Client/server ... TCP/IP Networking
17
Generic & basic networking layer structure
Application Protocol (http, ...) TCP/UDP/IP Abstract layer Physical link Hardware interfaces Networking
18
Java networking solution Application Protocol (http, ...)
JAVA VM Application Protocol (http, ...) Packages (java.net.* ...) TCP/UDP/IP JAVA specifications Networking
19
Client/server concept (two or more machines) Pooling & response thread
TCP/UDP/IP Application Protocol (http, ...) JAVA VM Request thread TCP/UDP/IP Application Protocol (http, ...) JAVA VM Server Networking
20
Client/server concept (two o more machines) Pooling & response thread
TCP/UDP/IP Application Protocol (http, ...) JAVA VM Request thread Application Protocol (http, ...) TCP/UDP/IP Server Networking
21
Client/server concept (one machine) Pooling & response thread
Request thread TCP/UDP/IP Application Protocol (http, ...) JAVA VM Networking
22
Client/server concept (one machine)
Pooling & response thread Request thread JAVA VM Application Protocol (http, ...) TCP/UDP/IP Networking
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.