YOUR FEEDBACK
Gregor Rosenauer wrote: well, not what's your take on this? Did I miss a second page of this article or...


2008 East
DIAMOND SPONSOR:
Data Direct
Frontiers in Data Access: The Coming Wave in Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
Intel
Virtualization – Path to Predictive Enterprise
Green Hills
IT Security in a Hostile World
JBoss / freedom oss
Practical SOA Approach
GOLD SPONSORS:
Software AG
The Art & Science of SOA: How Governance Enables Adoption
PlateSpin
Effective Planning for Virtual Infrastructure Growth
Fujitsu
Automated Business Process Discovery & Virtualization Service
Ceedo
Workspace Virtualization
Click For 2007 West
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SYS-CON.TV
TOP LINKS YOU MUST CLICK ON


Linux.SYS-CON.com Feature: Live Patching on Linux
A key technology for highly available Linux systems

Real-Time
You can load patches on the target process memory space without "mmap3" by using POKEDATA/ POKETEXT in a ptrace system call. However this approach requires using ATTACH before using POKEDATA/POKETEXT, which are ptrace system calls. Then, the target process gets a SIGSTOP signal and stops during patch module loading.

If POKEDATA/POKETEXT execution is sufficiently fast, then this method is useful. However, ptrace can write data at the size of word at one time. Therefore, what disturbs the target process execution depends on the size and number of patch modules.

On the contrary, "mmap3" system call, which PANNUS uses, doesn't stop the target process when mapping patch modules to the memory.

Limitations on Target Software
First, as we described above, modifying a kernel source isn't necessary if the target software has its own live-patching capability. But there are lots of software components that come with the operating system that don't have their own live-patching function. Adding a specific routine or library to these software components in the user space is a costly operation.

Following the PANNUS's approach, one has to modify the kernel source to support live patching, but not all the software components in the user space.

Easy Operation
The PANNUS approach adopts the state transition model that enables loading, activating, deactivating, and unloading separately. The patch modules can be activated and deactivated easily.

The Future of Live Patching
PANNUS's approach is slightly experimental and other approaches should be investigated or the target of live patching should be expanded. Another target that we should pay attention to is kernel live patching. Dynamic instrumentation systems such as "kprobe," "jprobe," and "djprobe" are currently being developed as a part of the SystemTap project. Djprobe is a fast, direct jump probe, using "jmp" assembly code instead of the "int3" code used by kprobe to write a probe function to the entry point of a function. This approach, the method to overwrite "jmp" code, is the same as the live patching approach and can be applied to PANNUS.

Conclusion
Live patching is useful and necessary from the perspective of availability. However, generic users, such as desktop users, can't benefit from it at this point. We would like to become involved in diverse software development communities to find a more robust approach and gain a broad consensus among many developers.

References

About Takashi Ikebe
Takashi Ikebe is a senior open source development engineer with NTT Network Service Systems Laboratories. Within CGL, he participates in the Specifications Group.

About Masahiko Uchiyama
Masahiko Uchiyama is a software developer in PANNUS project. He is a chief system engineer as well as an assistant manager for NTT COMWARE. He's worked with IP telephony switches and related systems for six years. He currently lives in Chiba, Japan.

LATEST LINUX STORIES
GigaSpaces Technologies and GoGrid have announced the availability of the GigaSpaces eXtreme Application Platform (XAP) on GoGrid's enterprise-grade cloud computing service for Windows and Linux. The two companies’ joint offering enables enterprises to migrate existing and new Java, ...
Silverlight 2 advanced to Release Candidate 0 over the weekend. Microsoft underscores that it is only for testing and “should not be used for launching Silverlight 2 applications for the general public.” But final release, covering Windows and Mac, is thought to be imminent.
Join Scott Guthrie as he discusses Microsoft’s commitment to web standards development, Rich Internet Applications and how Microsoft is contributing to help move the web forward. Join Adobe’s Kevin Lynch as he demonstrates how Flash and HTML come together to make the most engaging,...
Red Hat Thursday delivered what it called the industry’s first integrated Linux-based High Performance Computing (HPC) platform, otherwise known as the Red Hat HPC Solution, an all-in-one HPC cluster stack that Red Hat and Platform Computing put together over the last year. The deliv...
Responding to the growing demand for business intelligence (BI) capabilities that enable real-time decision-making for operational business processes, InterSystems Corporation has announced InterSystems DeepSee embedded real-time BI software. DeepSee aims to broaden the use of BI to de...
Virtualization has become a critical part of Enterprise IT strategy. Why and how has it become one of the most important change agents in our industry? To answer these questions I had the good fortune recently to be able to speak to a select group of top IT industry executives who join...
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON FEATURED WHITEPAPERS

ADS BY GOOGLE