towards a new infrastructure for the world wide...
TRANSCRIPT
![Page 1: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/1.jpg)
Towards a new infrastructure for the World Wide Web
Systems Software Lab
Godmar Back
![Page 2: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/2.jpg)
Towards a new infrastructure for the World Wide Web
Systems Software Lab
Godmar Back
Or:What Have I Been Up To?
![Page 3: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/3.jpg)
3/27/2009 Departmental Seminar March 2009 3
![Page 4: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/4.jpg)
Systems Software Lab (Dr. Back)
• LibX platform for libraries
• HPC: Sparse methods
• Simulation
• Software Visualization (HDPV)
• Program Analysis• Domain-specific
Languages• Automatic Program
Enhancement
• Hardware Virtualization for
Manycores(VT-ASOS)
• Educational OS (Pintos)
• Advanced Client and Server Execution Environments for Cloud Applications
• Real-time GarbageCollection
Runtime Systems
Operating Systems
ApplicationsSoftware Engineering
4
![Page 5: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/5.jpg)
Cool projects I won’t talk about today (1)
• Sparse Methods– How can we make iterative
solvers for A x = b faster on current machines?
• collaboration w/ Belgin/Ribbens[ICS07, ICS09, IJPC09]
3/27/2009 Departmental Seminar March 2009 5
+ + +=0100 1100 0101 0010
0010 0001 1000 0100
0000 0000 1000 1100
Remainder Matrix
0 1 2 3 4 5 6 7 8 9 10 11
0
1
2
3
4
5
6
7
8
9
10
11
![Page 6: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/6.jpg)
• Automatic Program Enhancement
– How can we let programs complete themselves?
collaboration w/ Tilevich
[AOSD 2008]
3/27/2009 Departmental Seminar March 2009 6
Cool projects I won’t talk about today (2)
![Page 7: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/7.jpg)
C1,2C1,1 C2,2C2,1 C3,2C3,1 C4,2C4,1
CPU1
Conventional SMP-NUMA OS
RTA RTB RTC RTD
APPBAPPA APPC APPD
Node1 Node2
cores
cpus
memory
runtime
apps
Hypervisor
APPB
APPAAPPC APPD
OSBOSA
OSCD
CPU2 CPU3 CPU4
C1,2C1,1 C2,2C2,1 C3,2C3,1 C4,2C4,1
CPU1
Node1 Node2
CPU2 CPU3 CPU4
RTA
RTB
RTC RTD
OS
Cool projects I won’t talk about today (3)
collaboration w/ Peng & Nikolopoulous [STMCS ’07], NSF-CSR 0720673
• VT-ASOS– Can we use hardware virtualization to better
support manycore environments?
3/27/2009 7Departmental Seminar March 2009
![Page 8: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/8.jpg)
3/27/2009 Departmental Seminar March 2009 8
A java.lang.String in memory
A binary tree being traversed
Cool projects I won’t talk about today (4)
• HDPV– What do programs really look like?
collaboration w/ Sundaramanan [ACM SoftVis 08]
![Page 9: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/9.jpg)
Pintos Kernel
Usermode Test Cases
Device SupportKeyboard, VGA, USB, Serial Port, Timer, PCI, IDE
P3: Virtual MemoryP4: Extended
Filesystem
P2: System Call Layer: Copy-in/out, FD Management
Stress Tests
Boot Support
MMU Support
ThreadingSimple Scheduler
P1: Priority Scheduler
P1: MLFQS
P1: Alarm Clock
P2: Process Management
P3: Page Fault
Handling
P3: Address Space Manager
P1: Priority Inheritance
Basic Filesystem
P1: Kernel-mode Test Cases
MLFQS Scheduling
Priority Scheduling Alarm Clock
Physical Memory Manager
P3: Page Replacement
P3: Memory-mapped Files
P4: HierarchicalMulti-threaded
Filesystemand
Buffer Cache
P2-4: System Call Functionality
P2-4: Robustness
P2-4:Basic Filesystem
Students Create
Public Tests
Support Code
Cool projects I won’t talk about today (5)
collaboration w/ Pfaff & Romano [SIGCSE 2009]
• The Pintos Educational OS
– How do we teach OS in a realistic and state‐of‐the‐art manner?
3/27/2009 9Departmental Seminar March 2009
![Page 10: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/10.jpg)
A Bit Philosophy
• Applications drive systems
• Users run applications, they don’t care about systems
• Successful systems designers understand applications
3/27/2009 Departmental Seminar March 2009 10
![Page 11: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/11.jpg)
LibX: Background
• Brick-and-mortar libraries in the Internet age face a problem– Students + researchers forgo library resources– Risk becoming irrelevant
• A “virtual librarian” that guides users to library resources while they use the Web– integrates access to library resources into the users’
“webflow”– no matter which page a user visits (⇒ needs client-
side presence!)
3/27/2009 11Departmental Seminar March 2009
![Page 12: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/12.jpg)
LibX 1.0 Features
• Toolbar and right-click context menu• Adaptive and user-configurable context menus• OpenURL support• Magic Button (Google Scholar support)• Web Localization via Embedded Cues• Autolinking• Off-campus access via EZProxy or WAM• Support for CiteULike• Support for COinS• Support for xISBN• Show/Hide Hotkey
3/27/2009 12Departmental Seminar March 2009
![Page 13: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/13.jpg)
LibX 1.0 Features
• Toolbar and right-click context menu• Adaptive and user-configurable context menus• OpenURL support• Magic Button (Google Scholar support)• Web Localization via Embedded Cues• Autolinking• Off-campus access via EZProxy or WAM• Support for CiteULike• Support for COinS• Support for xISBN• Show/Hide Hotkey
3/27/2009 13Departmental Seminar March 2009
![Page 14: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/14.jpg)
LibX Timeline
• 2005– Released LibX Virginia Tech as a Firefox extension– Offered to share LibX with interested libraries
• 2006– Tremendous response from library community– Received National Leadership Grant from IMLS to
create LibX for IE and Edition Builder
• 2007– Received LITA Entrepreneurial Award
3/27/2009 Departmental Seminar March 2009 14
![Page 15: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/15.jpg)
The LibX Edition Builder
• A configuration management tool for creating customized versions of LibX– Customized version of LibX = LibX edition
• Edition configuration includes descriptions of community-local resources: – OPACs, OpenURL, Proxy, Databases, Links, Branding, …
• Edition Builder is easy to use– Makes heavy use of OCLC registries– Uses sophisticated auto-detection techniques– Usable by librarians, not just programmers
• Anybody can create, share, and manage editions• Over 550 edition as of now, new ones created at a pace of 20/month
– Huge human investment– 10’s of thousands of end users
3/27/2009 Departmental Seminar March 2009 15
![Page 16: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/16.jpg)
EDITION BUILDER DEMO
3/27/2009 16Departmental Seminar March 2009
![Page 17: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/17.jpg)
Demo Backup Slide
3/27/2009 17Departmental Seminar March 2009
![Page 18: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/18.jpg)
LoginEdition and
Revision Management
Changes to Configuration
Auto-discoveryDownload
customized LibX
Architecture
18
Edition Maintainer
End User
Edition Builder
Database
File System
Third Party ResourceServers
OCLC WorldCatRegistry
Web Server
3/27/2009 Departmental Seminar March 2009
![Page 19: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/19.jpg)
Log Data – Adoption of Edition Builder
• 1155 total editions present by May 2008
• As of Oct 2008, 1600 total editions• 460 were
made public• New editions
are being made public at a rate of ~20/month
3/27/2009 19Departmental Seminar March 2009
![Page 20: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/20.jpg)
Overall Perceived Ease of Use
0%
10%
20%
30%
40%
50%
60%
Very easy to use Easy to use Somewhat easy to use
Somewhat difficult to use
Difficult to use Very difficult to use
Overall, you would describe the LibX Edition Builder as:
3/27/2009 20Departmental Seminar March 2009
![Page 21: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/21.jpg)
Perceived Learning Curve
0%
10%
20%
30%
40%
50%
Very easy to learn
Easy to learn Somewhat easy to learn
Somewhat difficult to learn
Difficult to learn Very difficult to learn
In your opinion, theLibX Edition Builder interface is:
3/27/2009 21Departmental Seminar March 2009
![Page 22: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/22.jpg)
Style of Application
0%
10%
20%
30%
40%
50%
I much prefer the LibX Edition
Builder style
I somewhat prefer the LibX Edition Builder
style
I do not think the style matters
I somewhat prefer the
traditional style
I much prefer the traditional
style
No response
Do you prefer this style of web application to the more traditional, page-based applications?
3/27/2009 22Departmental Seminar March 2009
![Page 23: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/23.jpg)
Saving of Changes
0%
10%
20%
30%
40%
50%
The LibX Edition Builder uses an interaction mode in which configuration changes are immediately saved, so you do not need to press "Save" or "Submit"
In your opinion, this mode of interaction was:
3/27/2009 23Departmental Seminar March 2009
![Page 24: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/24.jpg)
Log Data Results (cont’d)
• 50% editions built in 72 minutes or less
• 80% editions built in 190 minutes or less
3/27/2009 24Departmental Seminar March 2009
![Page 25: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/25.jpg)
Study Findings
• The LibX Edition Builder – is easy to use and learn
– auto-detection is effective at configuring resources
• Created a community
• Open source spirit– Anybody can create, share, publish, copy and
adapt editions
3/27/2009 25Departmental Seminar March 2009
![Page 26: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/26.jpg)
Where to go from here?
• A toolbar is great, but…
• Emerging technology trends– Service-oriented architectures, web services
interfaces – soon even to ILS!
– Data mash-ups; HTML widgets
• Educational trends: librarians, educators, and users create– Online tutorials, subject guides, visualizations
– Social OPACs: tagging, reviews, recommender services
3/27/2009 26Departmental Seminar March 2009
![Page 27: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/27.jpg)
World Wide Web
Library Resources andWeb Services
LibX 2.0LibX 2.0 plugin: executes Libapps, merging library information into pages.
Users:decide to which
library services to subscribe, see
expanded view of the web
Librarians: create or adapt Libapps from reusable, shareable
modules
3/27/2009 27Departmental Seminar March 2009
But who will create those
modules?
![Page 28: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/28.jpg)
LIBX 2.0 DEMO
3/27/2009 28Departmental Seminar March 2009
![Page 29: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/29.jpg)
The LibApp Model
• How can the interaction of LibX with web content be modeled?
• Typical tasks involve– Examination of the page and extraction of information– Processing of information– Modification of the page
• A Module is a small piece of JavaScript code along with a metadata description of its input and/or output
• A Libapp is a group of modules• A Package is a folder of libapps and packages
3/27/2009 Departmental Seminar March 2009 29
![Page 30: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/30.jpg)
LibX Tuple Spaces
tuple = TAKE(template)
• If a tuple matching template exists in the tuple space, remove it and return it
• If no tuple exists, wait until a matching tuple is written, remove it and return it
WRITE (tuple)
• Write a tuple into the space
• If a TAKE is pending with a matching template, complete the TAKE
3/27/2009 Departmental Seminar March 2009 30
Tuples and Templates are JavaScript objects in JSON notation. Tuple example: { isbn: “0743226720” }Template example: { isbn : * } // any tuple with ‘isbn’ field
![Page 31: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/31.jpg)
3/27/2009 Departmental Seminar March 2009 31
Tuple Space
Word Finder
Display ResultName Lookup
{ name: John Grisham}Guarded-By:
{ name: *}Guarded-By:
{ display: * }
{ display: “published: 1989-2008
(Novelists, American--20th century), most widely held work: The client” }
![Page 32: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/32.jpg)
Rationale for Tuple Spaces
Software Engineering
• Low coupling between modules
• Independent composition
• Simplicity
• Suitable for meta-programming
Handling Asynchrony
• User actions happen asynchronously
• Information arrives asynchronously from external sources
• Execution order independence
3/27/2009 Departmental Seminar March 2009 32
![Page 33: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/33.jpg)
Back To Systems…
![Page 34: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/34.jpg)
Client Side – Systems Perspective
• Browser’s execution environment must support a mix of components– Coming from the original page
– Coming from widgets included in original page
– Coming from extensions such as LibX
3/27/2009 Departmental Seminar March 2009 34
Widget1
Component 2
Component 3
Ext 2
Ext 1
Gadget 1
![Page 35: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/35.jpg)
Why Existing Browsers Don’t Work
• Lack of namespace separation
• Lack of fine-grained security contexts
• Lack of resource management
• Lack of parallelism
3/27/2009 Departmental Seminar March 2009 35
<script>for (var i = 0;; i++)
setTimeout( function () {var list = { data: “some string” };for (;;)
list = {next: list,data: list.data + list.data
};}, i++);
</script>
![Page 36: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/36.jpg)
Script Spaces
• Script space represents execution context– May be Tab, Page, Frame, Extension module or
Part of Page
• Unit of resource consumption– CPU + Memory + Garbage Collection
• Separate security context
• Separately schedulable
3/27/2009 Departmental Seminar March 2009 36
![Page 37: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/37.jpg)
Server Side – Systems Perspective
3/27/2009 Departmental Seminar March 2009 37
Widget1
Component 2
Component 3
Gadget 1
• Many apps use Web as their primary user interface (“AJAX”)– E.g. LibX Edition Builder
– Google Mail, Docs, etc.
• Must manage complex UI state
![Page 38: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/38.jpg)
Challenges for Server-side Environments
• Web designed for static documents– Interactivity was retrofitted
• Stateless nature of HTTP– Must re-render complete presentation state on
every request
• If state is kept on client, developer must manage client-server communication– Writing distributed applications is hard
3/27/2009 Departmental Seminar March 2009 38
![Page 39: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/39.jpg)
Idea: A “remote-display” approach
• Server-centric AJAX Framework– Keep presentation state on
server side
– Use aspect-oriented techniques to track changes to presentation state
– Render on demand
• Drastically simplified design
3/27/2009 Departmental Seminar March 2009 39
Widget1
Component 2
Component 3
Gadget 1
Widget1
Component 2
Component 3
Gadget 1
Server
Client
![Page 40: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/40.jpg)
Conclusion
• To build systems, must understand applications
• Not just theoretically, build and support them
3/27/2009 Departmental Seminar March 2009 40
![Page 41: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/41.jpg)
Acknowledgements
LibX Team• Annette Bailey• Godmar Back• Kyrille Goldbeck• Michael Doyle• Arif Khokar• Travis Webb• Alumni
– Nathan Baker– Tilottama Gaat– Tobias Wieschnowsky– Robert Ellis
• Advanced Execution Environments– Amarjyoti Deka– Michael Doyle
• Students– Mehmet Belgin– Peng Lu– Ben Pfaff– Anthony Romano– Jaishankar Sundararaman
• Faculty– Dimitris Nikolopoulous– Calvin Ribbens– Eli Tilevich
3/27/2009 41Departmental Seminar March 2009
![Page 42: Towards a new infrastructure for the World Wide Webcourses.cs.vt.edu/~cs5944/lectures/slides/BackCSSeminarMar27.pdf · Towards a new infrastructure for the World Wide Web Systems](https://reader031.vdocuments.us/reader031/viewer/2022031011/5b9510a509d3f2a3668bc9ef/html5/thumbnails/42.jpg)
Past Student Employment
3/27/2009 Departmental Seminar March 2009 42
I’m hiring for multiple open GRA and URA positions