OSDevCon 2009: Detailed Program
Thanks to Sebastian Laubscher
Tuesday October 27, 10:00 - 14:00
In case of performance bottlenecks many developers, researchers and system
administrators think primarily about CPU cycles, caches or compiler
flags. Influences caused by the operating system or the interaction of
concurrently running applications are neglected far too often in real
This perspective is mainly caused by the lack of easy to use tools that dynamically cover applications as well kernel-space and which can safely be applied in an production environment.
With the introduction of DTrace in Solaris 10 most of those wishes became true.
The tutorial is targeting DTrace newbies from system administration as well as from the development side. It will teach attendees the basics as well as some outstanding features of DTrace and the "D" language. Several examples, including live demos on a virtual machine, demonstrate how easy it gets to retrieve helpful information from an application or the Solaris kernel. While the examples cover a brought range from IO behavior to thread-scheduling in OpenMP applications, the live demos will help to understand common pitfalls and demonstrate best practices. In addition the presenter give hints on how to boost DTrace capabilities by combining it with other tools such as gnuplot.
Thomas Nau has 15+ years of experience as a professional in the
hard- and software arena. After graduating from Ulm University in 1991
with a Diploma in Physics he worked for some years in a medical school
before switching over to the Universities computer center.
His focus for the last years has been on UNIX, mainly Solaris, servers. Participating in a number of beta programs such as the "OpenSolaris Pilot" he tries to stay ahead of the technology curve when it comes to the OS and tools for performance analysis, monitoring or resource management.
Thomas is now the head of the university's communication infrastructure department providing compute-, internet,- and phone services for almost 10000 people.
Beside his work at the University he just loves asian food, to give lectures or presentations and sometimes works as a consultant when not busy with his family or Shaolin Kung Fu.
Max Bruning — OpenSolaris Kernel Debugging by Examples
Tuesday October 27, 14:00 - 18:00
This half day tutorial will give attendees some hands-on experience
at analyzing and debugging kernel problems. Attendees will be given
source code for some kernel modules that will cause problems. Attendees
will build and install each module, then use the module to cause the
problem. Then we will go through the steps taken to analyze and debug the
problem. Problems will include BAD TRAPS, deadlock, and memory corruption.
Students will need console access to a machine running a recent version of Nevada/OpenSolaris. This could be their laptops, with their version of Solaris installed natively or on top of some virtualization technology. Attendees machines will also need a C compiler installed. This tutorial is meant to be "hands-on".
Max Bruning began using and programming Unix-based systems while obtaining a Master's degree at Columbia University. He has been teaching Unix Internals, Device Drivers, and various other courses since 1981. Max has also spent many years doing kernel development and debugging work. He has done consulting and/or training work for Bell Labs, AT&T, Motorola, Sun Microsystems, HP, Siemens-Nixdorf, and various other companies. Max has had articles published on device drivers, Solaris/Linux/Freebsd kernels, and application programming on Solaris and Linux. In his spare time, he plays with mdb, zdb,and dtrace, and he writes courses. His very occasionally written blog is at mbruning.blogspot.com, and website is at www.bruningsystems.com.
Wednesday October 28 – Tutorials
Chad Mynhier — DTrace: Practical application
Wednesday October 28, 10:00 - 18:00
This tutorial will cover DTrace, the dynamic tracing utility available in OpenSolaris. The topics will include the following:
- an introduction to DTrace
- DTrace probes and providers
- the structure of D programs
- features of the D language
- practical aplications of DTrace
- inserting DTrace probes into applications
- an overview of DTrace internals
Chad Mynhier is currently a consultant for Forsythe Technology, Inc., concentrating on performance troubleshooting on Solaris systems. In this role, he has achieved some significant performance gains including one 1000x performance improvement, all of which has been made possible by DTrace. He is a core contributor in the DTrace community, having implemented stddev() and having fixed a number of other bugs. He is a co-author, along with Jim Mauro, Brendan Gregg, and Tariq Magdon-Ismail, of an upcoming book on DTrace covering practical application and internals. When not immersed in DTrace code, he likes to spend time with his wife, son, and identical twin daughters.
Hartmut Streppel / Thorsten Früauf — Advanced Topics in Open HA Cluster
Wednesday October 28, 10:00 - 18:00
The Open HA Cluster (OHAC) is moving forward. The first release of OHAC, OHAC 2009.06 is now available for Open Solaris 2009.06. OHAC offers some very interesting features that are not part of the Solaris Cluster product, like improved iSCSI support that enable the configuration of shared nothing clusters without additional replication layers.
OHAC is designed to be easy to use. It still offers a wealth of configuration options that make it ideal even for very complex and demanding HA infrastructures. This complexitiy has up til now not been documented.
This tutorial will try to fill this gap. The two instructors, Hartmut Streppel (Solution Architect with Sun in Germany) and Thorsten Früauf (project lead in the Solaris Cluster Engineering organization) plan to cover the following topics during this one-day tutorial:
- Resource dependencies and affinities
- highly available quorum configurations incl. quorum server
- IPMP, the DEPRECATED flag and routing
- Generic Data Service (GDS) Toolkit
- Problems with 2 room/site clusters
- NFS shares as shared storage
- HA containers
- Load Balancing in scalable resource groups
- support for other virtualization technologies
- iSCSI support
It is planned to demonstrate most of the topics either in live demos locally, or in one of Sun's solition centers over the Internet. We expect that attendees have a good understanding of HA clusters in general and at least a basic understanding of Solaris Cluster or Open HA Cluster.
Hartmut Streppel is Solution Architect with Sun Microsystems in Germany. He has been in the IT industry for more than 25 years, working with companies like the Open Software Foundation on the Distributed Management Environment and Digital Equipment on TruCluster und Tru64 Unix. With Sun Hartmut is one of the key resources in High Availability and Disaster Recovery. He has a strong background in clustering. Due to his daily work with customers, he understands customer and product issues around high availability products and processes.
Thorsten Früauf is working for Sun Microsystems GmbH since March 1999 and is currently a software engineer in the availability engineering department.
Thomas Wagner — Learn to SourceJuicer
Wednesday October 28, 14:00 - 18:00
Be it business software or a Free/Open Source Software, it is most practical to automate compilation, packaging (re-packaging) and distribution through your company's, university's, project's or private IPS package repository. You are in control of the versions and contents. You may also go public and help extending the collection of Free/Open Source Software by adding your packages to the "/contrib" repository of OpenSolaris.org. This tutorial enables you to port, compile, build and maintain OpenSolaris packages and understand the techniques behind IPS package repositories and packaging tools to be used locally or on build robots like SourceJuicer. To achive a maximum level of automation, we use the toolkit for RPM style .spec files which is used traditionally to build the GNOME packages on OpenSolaris. You'll learn the basics of RPM style .spec files and additionally you'll get the OpenSolaris specifics when porting software to OpenSolaris. This starts with looking a the RPM tags used to control uncompressing the source, running ./configure --flags && make && make install and packaging up the results into IPS or SVR4 package format. We inspect simple .spec files cases as well as multi-arch compile and package descriptions for SPARC and X86 as well as 32-bit/64-bit dual architecture build recipes to build all in one shot, OpenSolaris specific tips included. Hands-On! The toolkit for building RPM .spec files and corresponding development environment is explained and demonstrated live. If you bring your OpenSolaris equipped laptop with you, you'll compile/package/distribute your own software packages by the end of the day. To prepare compilers and load needed packages before the tutorial, you may use a bootstrap script http://tinyurl.com/bootstrap-sfe-latest-os20nn (run as a "root"-user to prepare the environment for an existing non-root user). We'll look at several public repositores with much more then 1000 OpenSolaris specific RPM .spec files and how to enable each of them to meet your software requirements. The range of available software goes from multimedia software to email servers, spam filters, to additional perl CPAN mudules.... If something is missing, you just learned how to enhance the collection with RPM .spec files yourself. IPS Package Community! The methods and toolkit from the turtorial is the foundation of the SourceJuicer project which helps extending the range of available Software on OpenSolaris. A quick look into the basics enables you to submit your own software RPM .spec files into SourceJuicer and understand the Workflow with approval and voting mechanisms for your RPM .spec file to go as a automaticly built Solaris IPS package into the public repository "/contrib".
Working at Sun Microsystems for more then 8 years in the Sun Services Division. Currently working with Sun Customers to design the processes around Solaris 10 zones patch updates. Besides that high engagement in the OpenSolaris community to bring automatic build recipes for popular F/OSS Software to OpenSolaris.
Thursday October 29 – Presentations
Keynote: Simon Phipps – Clouds, Core and Corporations: What's Next for Open Source?
Thursday October 29, 9:45 - 10:45
Over the last year, we have seen significant changes in the open source landscape. Companies (like MySQL and Sun), industry groups (like the Linux Foundation and Open Source for America), FOSS organisations (like OSI and FSFE) have all seen significant changes. Even assumptions about traditional FOSS foes are being challenged. So what faces us in the coming years? Is Open Source still relevant in the age of "open core", cloud computing and corporate embrace.
A well-known and respected leader in the Free software community, computer
industry veteran Simon Phipps has been involved at a strategic level in
some of the world's leading technology companies. He has worked in such
hands-on roles as field engineer, programmer and systems analyst, as
well as run a software publishing company. He worked with OSI standards
in the eighties, on the first commercial collaborative conferencing
software in the nineties, and helped introduce both Java and XML at
IBM. Today he takes an active interest in Free and Open Source software
organisations, including the advisory boards of OpenSolaris, OpenJDK,
OpenSPARC and GNOME, and is a widely read thought-leader.
In mid-2000 he joined Sun Microsystems where he helped pioneer Sun's employee blogging, social media and community engagement programmes. In 2005 he was appointed Chief Open Source Officer at Sun Microsystems, co-ordinating Sun's extensive participation in Free and Open Source software communities. In that role he has overseen the conversion to Free software of the full Java platform, the Solaris UNIX operating system, the SPARC architecture and the rest of Sun's broad portfolio, all under OSI-approved Free licenses. He has also been an outspoken advocate of the value of Open Document Format (ODF) for businesses and governments. Most recently he has been an advisor to local and national government agencies across Europe, the Pacific Rim and Latin America as they have devised and implemented strategies around Free and Open Source software.
He holds a degree in electronic engineering and is a Chartered Engineer and Fellow of the British Computer Society. His personal home page and blog is http://www.webmink.net .
More about Simon.
Thorsten Früauf — High Availability with a minimal cluster
Thursday October 29, 11:15 - 12:00
The talk will give an introduction into the additional options that are now possible with Open HA Cluster 2009.06 (Project Colorado). It will explain the architecture to build a minimal two-node HA cluster by just using two systems (if at least OpenSolaris 2009.06 runs on them) and their local disk drives, without the requirement to have shared storage. The following technologies will get used and explained: Weak Membership, Crossbow, iSCSI, ZFS, IPsec und IPS.
Thorsten Früauf is working for Sun Microsystems GmbH since March 1999 and is currently a software engineer in the availability engineering department.
Glenn Brunette — Immutable Service Containers
Thursday October 29, 12:00 - 12:45
In this talk we will demonstrate a new concept called Immutable Service Containers built upon the OpenSolaris OS and discuss how ISCs offer a compelling security advantage by pre-integrating security functionality and refactoring how services can and should be delivered. Step by step, we will deconstruct and demonstrate what makes an ISC tick using a real-world deployment scenario. Come see why ISCs on Solaris are an excellent platform for secure service delivery!
Glenn Brunette is a Distinguished Engineer and Chief Security Architect at Sun Microsystems. For over 15 years, Glenn has architected and delivered security solutions for a wide range of customers and industries. Currently, as a member of Sun's Chief Architect's Office, Glenn leads Sun's security initiatives for Cloud Computing and other highly-scalable and dynamic environments. Glenn develops architectures, patterns, best practices, and tools enabling improved security for Cloud Computing and other highly-scalable, dynamic environments.
Anil Gulecha — Nexenta, OpenStorage and Commercial Open Source
Thursday October 29, 14:15 - 15:00
Nexenta Systems sponsors the Nexenta project and the NexentaStor project websites:
- Nexenta.org: The open source, Ubuntu LTS derived operating system with the Opensolaris kernel. Nexenta.org ships a full server OS, and is the Opensolaris distribution with the most number of repository packages. This OS, called Nexenta Core Platform forms the basis of NexentaStor, the enterprise class storage appliance, which provides easy access to ZFS's powerful features.
- NexentaStor.org: This is the sourceforge for the NexentaStor appliance. Unveiled at the start of September, this website provides the NexentaStor community the resources to extend and customize NexentaStor. Many projects, including a host of CDDL plugins, and developer documentation is hosted here. Project/repository hosting, issue tracking, forums, wiki and other project management facilities are provided to any user who wishes to start a project.
- Nexenta.com: This is the commercial arm of the company. One of the bigger success stories in the storage world. NexentaStor is the main product, along with plugins for particular enterprise-storage verticals. Underneath, NexentaStor uses NCP and the debian packaging subsystem to manage OS upgrades, plugins and snapshotting.
Anil Gulecha is a developer on the Nexenta Core Platform project, and the NexentaStor community projects. He has been involved with the Opensolaris community for the past three years. He has also been involved with Belenix, Opensolaris and is a member of the active Bangalore Opensolaris UserGroup. Anil enjoys music, philosophy, humorous literature and playing the guitar. You can find more about him on his website.
Brian Nitz, Mark Duggan — Source Juicer – A New Way to Build Solaris Software
Thursday October 29, 15:00 - 15:45
Source Juicer (http://jucr.opensolaris.org) is a recently deployed Opensolaris website who's purpose it is to encourage community porting efforts for the solaris platform. Opensolaris now has two community governed IPS package respoitories, /pending and /contrib and Source Juicer delivers software into these repos. Source Juicer has two main components, the first is a web application that is responsible for accepting and managing community initiated package submissions. When a submission is made, a review thread is created allowing for community members comments and review of the package. At the same time as generating the review thread, the system attempts to build the package and if successful, it is published into the /pending repository. Once the submission has received two positive votes from designated approvers the package is promoted to the /contrib repository, where it is available as a community supported package. The second component is called BuildGrid, which builds and publishes packages. BuildGrid uses a number of Opensolaris technologies, namely ZFS, Zones, IPS & Pkgbuild to build the packages. The BuildGrid requires at least one spec file and one copyright file to successfully build a package. Its scalable and robust architecture allows for the continuous and simultaneous building of packages for different releases and different architectures. Included in the future plans of the Source Juicer development team is the goal to migrate the current release engineering process for the desktop consolidation to the Source Juicer application. This will provide the twin advantages of enhancing community involvement with the Desktop components of Opensolaris and moving away from the existing lengthy and cumbersome nightly builds to a continuous package-by-package build. Also covered in the talk will be a a look at the origination of the project, a detailed look at the architecture and a brief walk-through of the creating and reviewing of a submission, plus the building and installing of a package.
Brian Nitz has been a software engineer since 1988. His contributions include support and service productivity tools for radiology workstations, QA and performance tools the successful deployment of over 7000 Sun JDS (Linux) desktops at a large bank, a multidatabase defect management system and components of the sourcejuicer package build web service He lives in Ireland with his wife and two kids where he enjoys travel, sailing and photography.
Mark Duggan has worked since 1990 as a contract system administrator/integrator in Ireland and in the US, focusing on thin client solutions and Solaris/Linux backend services. Since joining Sun's Dublin based Desktop Engineering group in 2000, he has been a member of the desktop QA/RE team. Besides this engineering work he has also had a special focus on the promotion of Sun's desktop products, in the form of customer facing presentations and proof of concept pilots. In the past year, he has been responsible, as project lead, for the community oriented Source Juicer project, involved at all stages from conception, design, development and deployment of web application and backend build system.
Michal Pryc — Jumping to the next IPS level
Thursday October 29, 16:15 - 17:00
There are two parts of this talk: First one is focusing mostly on the IPS GUI and it's new/planned features such as web install, publisher auto discovery, history support and lots of other features. The users and developers will get an overview about the development aspects of the IPS GUI project from behind the scenes. This includes usability studies and automated tests, which includes DTrace for python. In the second part speaker will explain the benefits of working with multiply boot environments using OpenSolaris Package Manager and beadm(1) CLI.
Michal Pryc, a Sun engineer, has enjoyed working on the OpenSolaris desktop since mid-2006, in particular, the key project: Package Manager. Previously, Michal developed Java platform-based games and performed administrative tasks for several years. Away from the computer, depending on the place and time of the year, he plays sports: gliding, sailing, skiing, and badminton. For Michal it's the third time, when he will attend OpenSolaris Developer Conference, previously in Berlin and Prague.
Volker A. Brandt — Alligator meets Terminator: Caiman and AI
Thursday October 29, 17:00 - 17:45
The Alligator meets the Terminator: Caiman, AI, and the other 998 ways of installing OpenSolaris The presentation will give an overview over the state of the art in the world of OpenSolaris installation. Developers who might be familiar with the traditional interactive and JumpStart installation methods can find out about the shiny new installation techniques. Starting with the initial graphical interactive "Caiman" installer, OpenSolaris can now be installed in a more or less "hands-off" fashion, too. However, both this "Automated Installer" and the interactive text-based console installer are very much work in progress. The AI eats XML manifests, which seems a bit daunting and complicated but it's not so bad if the developer sticks to a few simple rules and has a good template. Package repositories provided via the Image Packaging System are the basis of every OpenSolaris installation. Operations on packaged objects are initiated through actuators, and software instances can be assembled leveraging the Service Management Framework. The interaction and workflow between these components is shown in a few short examples. The distribution builder is also briefly described. Finally, particularly for software and package developers, we will spend a few minutes on tips and tricks to speed up installation-test-edit cycles and installation debugging. There aren't really a thousand ways of installing OpenSolaris, but there is certainly more choice for the developer than just a few months ago. This presentation attempts to empower the developer to make informed choices for her or his OpenSolaris installation method.
Volker A. Brandt is an IT consultant specialising in Solaris system and infrastructure development based in Meckenheim, Germany. Past Sun and Solaris experience has included almost everything from assisting a small two-server shop to building a large disaster recovery environment based on many enterprise systems across several data centers. He has worked on software for automating package generation, Solaris OS installation, package deployment and software distribution. He has held training classes and hands-on workshops on many Solaris-related topics, as well as basic Unix instruction classes and Perl programmer coaching. The author has been using Free and Open Source Software for twenty-five years.
Philip Torchinsky, Peter Karlsson — OpenSolaris: fast deployment on hundreds machines
Thursday October 29, 17:45 - 18:30
While installing large datacenters, big classrooms or significant number of similar workplaces in medium- or large-scale organizations, one needs to install many computers with the same or very similar configurations. OpenSolaris has a feature of auto-install, allowing to install such configurations over a network. However, one may need to install an image significantly differ from standard set of packages available through auto-install. The talk is about an experience of such an installation performed by Peter Karlsson and Philip Torchinsky at JavaOne. The core technology will be described, and a few issues will be discussed. Main idea of the large-scale deployment is to use master ZFS snapshot, and a few tricks to pull it from the install server after initial OpenSolaris installation. The technology can be scaled differently - from a dozen of machines to several thousand ones. Those who wish to install several development environments on any number of machines are to benefit from the technology also.
Philip worked as system administrator, teacher and IT manager for sixteen years in different companies in Russia, Finland and Slovenia before he joint Sun Microsystems in 2007. Broad experience in UNIX system administration allowed him to publish two books on UNIX and, in particular, Solaris 9 and Solaris 10 (in Russian). Philip gave almost 100 talks on Solaris and OpenSolaris worldwide working as Solaris Evangelist at Sun, and the most interesting task was answering challenging questions in several languages. Philip enjoys OpenSolaris, FreeBSD, mountain skiing and snowboarding, classic music, and - from recent time - learning Open Source Telephony technology and LifeRay portal.
Friday October 30 – Presentations
Friday October 30, 9:00 - 9:45
This presentation will provide an mid-term update on the activities of the OGB 2009. It will include an introduction to the roles and responsibilities of the OGB 2009 members and officers. Details of OGB actions taken in the areas of outreach, planning, implementation, and recognition will be discussed. Specific topics will include how OGB is reaching out to the OpenSolaris ecosystem, OGB planning for the 2010 election, OGB sponsorship of the Facilitation project, implementation of feedback on the Constitution and guiding documents, and recognition of OpenSolaris contributors and participants.
Michelle Olson launched the OpenSolaris Documentation and Man Page source consolidations in 2006. She now holds the office of OpenSolaris Governing Board Chair and is the OpenSolaris.org Web Site Content Program Manager.
Krishnan Parthasarathi — Using DTrace for Gnome Performance Analysis
Friday October 30, 9:45 - 10:30
Gnome Desktop Environment is shipped with OpenSolaris by default. Gnome, like any other large software system has been hitting with performance issues, some annoying and some not so obviously visible. The idea is to use the power of DTrace to form a framework to enable tracing of Gnome. I propose to do this by adding USDT probes into some of the core modules of Gnome like glib, gtk and gio/gvfs. Adding probes in glib namely in the g_malloc()/ g_free() interface lets us analyse the sizes of objects that are being allocated in Gnome. Since USDT probes are enabled on a per-process basis, we can get a process-wise chart of object sizes of all gnome applications. This gives us a good idea on what are the sizes of memory request each gnome application is making. Probes in gtk, enables us to analyse the time taken to initialize and destroy an object(by adding probes in corresponding class_init/class_finalize and obj_init/obj_finalize functions). It also allows us to track what is the Mean Life Time of objects used by gnome applications, through the gtk type interface. Probes in gio/gvfs will let us compute the latencies involved in file I/O in Gnome better. The probes can help us compute the time taken to handle various URIs and understand better the bottlenecks, if any. With the above setup in place, I plan to write scripts that will aggregate "useful" data and deliver it in a meaningful form. This proposal is inspired by the observability and the near zero probe effect that DTrace offers. The traditional performance measurement concerns of the Gnome community are listed here: http://live.gnome.org/GnomePerformance Most of them listed, would be solved directly with above framework in place or with small extensions of the framework.
I work as a Sustaining Engineer at Sun Microsystems, Bangalore, for the Desktop Environment on Solaris/ OpenSolaris. Work involves fixing bugs in various components of Gnome on OpenSolaris release version and Solaris 10. Previous work: I was a part of a workout at foss.in, last year. [http://workouts.foss.in/2008/index.php/Profile_Gnome_using_Dtrace].
Christopher Bergstrom — OSUNIX - The story and challenges for a new distribution
Friday October 30, 9:45 - 10:30
OSUNIX will be just over a year old come this August and I can't think of any better way to celebrate the birthday than reflecting on the challenges and achievements which have happened. For this talk I'll break things into three categories : technical, social/community and legal. Since the beginning I must admit I underestimated the amount of work that goes into putting a distribution together. Solving and engineering problems has been very challenging, but after a year I can say I feel very rewarded. On the other hand the community or social aspects have been very frustrating. Recruiting developers who are willing to commit their free time is difficult at best. The OpenSolaris community as a whole is much more disconnected compared to most other open source communities and also historically more systems administrators. By learning from the mistakes of others and going outside the Solaris bubble there's new hope though. Lastly and possibly most importantly are the two legal problems that were glooming on the horizon from the beginning. Not everything with legal news can be disclosed, but I'll cover everything I can from the discussions with The Open Group to applying as a project to SPI (Software in the Public Interest).
I'm an open source evangelist with goals to liberate businesses, remove closed binaries and build strong communities. I fell in love with OpenSolaris technology after advocating Linux for years and now leader of the OSUNIX community.
Bill Rushmore — Introduction to the Chime Visualization Tool for DTrace
Friday October 30, 11:00 - 11:45
DTrace is a very powerful tool for diagnosing system problems but dealing with the plethora of data can be a challenge. That is where the open source Chime Visualization Tool comes into play. Its ability to graph data, sort columns arbitrarily, and display data over time offers convenience and better visibility of system and application behavior. Additionally, Chime can display moving averages and has other options such as record and playback. This presentation will introduce users to the Chime Visualization Tool for DTrace. This is a high level demonstration so prior knowledge of DTrace is not necessary. I will demonstrate how to use Chime's existing traces, specifically scripts from the DTrace Toolkit, and how a user can add their own traces by using the wizard. Chime will be used in live demonstrations of several typical problems a user may have and show how easy it is to find the cause of the problem.
I am software developer and have been involved with the OpenSolaris community since it's inception. I joined Sun Microsystems last year working in the OpenSolaris Developer Collaboration team. My responsibilities include running opensolaris.org, bugs.opensolaris.org, and defect.opensolaris.org. In my spare time I work on the Chime project and am one of the leaders of the project.
Uros Nedic — Network virtualisation using Crossbow technology
Friday October 30, 11:00 - 11:45
Leveraging current hardware capacities becomes one of the mayor topics in current IT business.
Designing tools for deploying network virtualization and effectively controlling virtual network environments from the perspective of network capacities raised demand for a project called Crossbow. With this technology we could effectively control how an application access to the network and decide how much bandwidth it could use. Also, we could dynamically allocate bandwidth resources giving to the application surplus if needed on behalf of other(s) application(s) whose network resources are underutilized.
This is done by creating Virtual Network Interface Cards (VNICs) and dedicating each of them to the different application we want to deploy. In this presentation we'll show how Crossbow technology work in practice deployed on OpenSolaris.
Education: Univ. of Belgrade, Faculty of Elec. Eng., Dept. of Telecommunications, MSc holder degree. Previous work experience: BTExact (British Telecommunication's Research Company), Adastral Park, Ipswich, UK Current work: Trend Consulting, UK based IT consulting company - working in Belgrade Branch Office, Serbia.
Zdenek Kotala — Dead ends in multithreads application development
Friday October 30, 11:45 - 12:30
A ten years back, there were difficult to have access to multi CPU machine and software developers preferred to write single thread and single process application. Nowadays computers have a lot of CPUs which gives to us possibility to use them for real parallel computing and improve application performance. You can see Niagara boxes which has 128CPUs (HW threads) in 1U rack size (e.g. Sun SPARC Enterprise T5140), or many people already have Intel or AMD multi core boxes at home. However, because most of application were written in single CPU era they are not able use capability of todays computers. Write multithreaded application is more complicated and we can se that many parallel application are buggy and contains many strange constructions which cause to deadlock or race conditions. Most of these bug of C application are caused by unfamiliarity with POSIX thread specification and bad application design. Multi threaded programing is complex topic and the presentation will focus only on few areas which author had opportunity to hunting bugs. The main areas are:
- Signal handling in multi threaded application
- How to survive after fork
- How to safety exit otherwise when thread is killed
- Parallel memory access - when we need lock and how to avoid performance drop.
Author has twenty years experience of computer programing. He graduated from West Bohemia University in Numeric methods and parallel computing. He worked on several projects which most of them runs on multi CPUs systems and on different OS (Solaris, Tru64, Windows and Linux). He spent short time of creating and lot of time hunting race conditions, deadlock and other parallel programing issues. At this moment author works as revenue product engineer for SUN Microsystems, Czech Republic. He focus on security technology like PKCS11 library, ssh, openssl and he is also responsible for PostgreSQL in Solaris. He is active member of PostgreSQL community.
Ulrich Gräf — ZFS internal structures
Friday October 29, 11:45 - 12:45
This talk explains the basic elements of the ZFS filesystem and the corresponding structures in the on-disk format; ZFS belongs to a new generation of filesystems, which are able to keep up with the pace of the developing disk subsystems and new challenges in data processing. But how does it work? Transactions are implemented with COW, the talk explains which data structures from uberblock over the internal tree to the leavenodes on the disk are modified during that. Some applications like databases emit a high number of synchronous writes which have to be implemented differently, ZFS keeps the integrity with the ZFS Intent Log. The tasks of the Data Management Unit (DMU) and the Storage Pool Allocator (SPA) are explained and why ZFS is able to optimize better than traditional filesystems. The structures mantained by DMU and SPA are examined. Directories and other mappings are implemented with ZAP (ZFS Attribute Processor) and variants (micro-ZAP). It is explained how it works and where it is used. Free space in ZFS is mantained with regard to the blocks still in use by snapshots. The talk explains how this works over multiple disks. ZFS can use SSDs in the critical areas for faster log writing (aka LOGZILLA) and for fast access to frequently read data (aka READZILLA). ZFS caching algorithm ARC implements this.
TH Darmstadt (now TU Darmstadt) 1985 - 1991:
Vineeth Pillai — ARM port of Opensolaris and its future!
Friday October 30, 14:00 - 14:45
One of the major events that took place in OpenSolaris in the near past is ARM port. With arm port, Solaris also has stepped into the embedded devices arena. In my presentation, I would like to cover in a small detail, about the port, source code layout, how to contribute by porting various boards and devices etc. On the closing side, I would also like to express my personal opinion on the future of Solaris with embedded devices and how to take this forward to realize a much efficient embedded operating environment with Open Solaris
Vineeth is working with SUN Microsystems Prague as Solaris Sustaining engineer. His main field of expertise is filesystems. He likes to play with new technologies and open solaris evangelization is his one other passion!
Constantin Gonzalez — Implementing a simple SMF Service: Lessons learned
Friday October 30, 14:00 - 14:45
This talk walks you through the implementation of a simple SMF service. What sounds "simple" at first, develops a life of its own when you consider installation/de-installation, security considerations, error handling and debugging, and of course unexpected little bugs and shortcomings. Finally, we add a GUI to our service by discovering the OpenSolaris Visual Panels project.
This "lessons learned" talk is intended to be a practical roundup of things to consider for developers interested in integrating with SMF.
Constantin is a Principal Field Technologist with Sun Microsystems, Germany. Together with Wolfgang Stief, he heads the Munich OpenSolaris User Group. In addition to OpenSolaris, he also spends time with Web 2.0, Cloud Computing, CPU and System Architectures and other geeky stuff.
Dr. David Boyes, Neale Ferguson – OpenSolaris on IBM System Z Hardware
Friday October 30, 14:45 - 15:30
The "Sirius" project is the first external project to successfully port OpenSolaris to the IBM System z platform extending the reach of the operating system outside Intel or SPARC. This presentation describes the design decisions made when planning and implementing the port of OpenSolaris to IBM's z/Architecture. It also describes and lists the changes made to the tools used to build the OpenSolaris code, as well as to the code itself. Apart from having great "hacker" appeal and a high "cool" factor there are interesting and perhaps compelling arguments for pursuing the goal of porting OpenSolaris to z/Architecture. These arguments will be examined in the presentation. An brief introduction to IBM's z/Architecture will be provided so that attendees can appreciate how this port of OpenSolaris has exploited the features of the platform.
Dr. David Boyes is the chief technologist of Sine Nomine Associates (SNA). The firm has done significant work in porting and supporting operating systems on multiple platforms including Linux on System z and other infrastructure components.
Neale Ferguson is the Chief Scientist and Principal Engineer at Sine Nomine Associates. He has had almost 30 years experience working with IBM mainframe and was involved in the porting of Linux to System z (independent of IBM). He did most of the design and kernel work for the port of OpenSolaris to System z. Originally from Sydney Australia he now lives in Leesburg Virginia.
Mark Mayo — pkgsrc community packaging for OpenSolaris
Friday October 30, 14:45 - 15:30
At Joyent, we don't use the IPS public repos for 3rd party packages. Instead, we work with the NetBSD-derived "pkgsrc" port tree. I will talk about our approach of maintaining our own forked build trees, how we generate IPS packages when needed and possible future directions around IPS, and look at how folks (like us) can easily contribute back to the pkgsrc community at large.
VP of Engineering at Joyent, arguably the world's largest production OpenSolaris installation.
Eric Saxe — Greening the OpenSolaris Kernel
Friday October 30, 15:45 - 16:30
Most modern computer systems (particularly those in the portable / desktop space) provide power management features that allow resource managers in the system software to leverage power states that trade off performance for power consumption. CPU power management features (for example) allow the OpenSolaris kernel to run CPUs at various speeds (frequencies) when busy, or to put the CPU is various depths of "sleep" when idle. By incorporating a keen understanding of workloads, and by characterizing their utilization, system resource managers can make the most of power management features, achieving good system efficiency by allowing resource consumers to maximize work done while minimizing resource power consumption. To achieve power efficiency at the system level however, the above is necessary but not sufficient. We must drive beyond energy efficient resource management, to also include energy efficient resource consumption. System resource consumers can actively contribute to the efficiency of the overall system by requesting only the resources necessary to get the job done, and more importantly...by not consuming system resources when there is no work to do. The OpenSolaris Tickless Kernel Project reflects an effort to apply the above philosophy to the OpenSolaris kernel itself. One might reasonably expect that on a completely idle OpenSolaris system, that system resources persistently remain in their lowest power consuming state. However, as one can observe through PowerTOP(1M), in practice there exists a significant amount of periodic, kernel service related background activity necessitating the wakeup of various power managed resources. The vast majority of this activity is inefficient by definition, as system resources are being consumed yet no productive work is being performed. The timing is ripe for this work, as it is expected that demands around energy efficient computing will continue to inspire development of hardware power management features providing for greater power savings when idle. However, it is also likely that to practically leverage these features, the system will need to be able to remain quiescent long enough to make the power savings benefits overshadow power and performance state transition overheads. Increased periods of idle system quiescence will also provide performance benefits when OpenSolaris is run in a virtual machine, as this will drastically reduce the frequency that the hypervisor will need to switch to an otherwise idle guest to run periodic background type activity. As might be inferred from the project's name, the initial focus is the elimination of the largest source of periodic kernel service activity...the 100 Hz clock interrupt. Where possible, event based (as opposed to time based periodic) implementations of clock()'s services are to be implemented eventually allowing the 100 Hz clock interrupt to be decommissioned entirely...thus allowing the project to reach its first milestone of one-second periods of system wide quiescence. Focus will then be broadened to address remaining periodic system activity. With the kernel itself out of the way, tools like PowerTOP(1M) will allow developers and system administrators to observe power inefficiencies and drive efficiency improvements into the broader OpenSolaris software eco-system.
Eric is a Staff Engineer in the Solaris Kernel Group. He has worked on a number of scheduler/dispatcher related kernel components including the CMT scheduling subsystem, the Power Aware Dispatcher, and MPO (Solaris NUMA framework) among other things. He is currently the technical lead for the Tickless Kernel project, and Project Tesla...both dedicated to improving kernel efficiency and optimizing overall system power/performance.
Ales Cernosek — Translation of OpenSolaris
Friday October 30, 15:45 - 16:30
One of the important OpenSolaris improvements that challenge the community is the translation of OpenSolaris into all languages that the community uses. The Solaris Operating System currently supports the translation of software messages, online help files, optional fonts, and locale-specific features into the following languages: Traditional and Simplified Chinese, Spanish, Japanese, German, Korean, French, Italian, Russian and Brazilian Portuguese. Sun's Globalization department is now working on the process of extending the full language support by allowing the community to translate any part of OpenSolaris into any language. The talk introduces the software application translation process and points out the issues related to the translation of an open-source operating system. The main goal is to show the ways of OpenSolaris translation, the optional tools that can be used for translation and the opportunities that the community faces while it is rapidly evolving. In addition to that, the presentation briefly summarizes key internationalization aspects of OpenSolaris like locale data, fonts, keyboards that allows an operating system to be used globally and especially to ensure that a system is ready for translation. With the world's globalization under way, the software localization efforts are getting more attention nowadays. Almost every open-source project's community is starting to localize the product into various languages and the translation methodology is being reinvented each time. The OpenSolaris community should realize the potential of sharing the tools and techniques of the open-source world and re-use it to maximize the productivity. Last OSDEV conf, we introduced a project called Community Translation Interface (CTI) . The intention of the tool is to have a central place where community can translate OpenSolaris. The project went from a pilot phase into regular usage during last year. The talk also summarizes practical experience with OpenSolaris translations by using this tool, experience with cooperation with various OpenSolaris localization groups and reveals the future plans. The paper also mentions different approaches used for translation of other open-source projects like OpenOffice.org or Netbeans. The translation of OpenSolaris is an important topic, because the means of translation the community uses can decide if and how quickly will OpenSolaris reach non-English speaking people all over the world.  CTI project: http://cti.sunvirtuallab.com
Ales Cernosek works as SW Engineer in Globalization (G11n) services organization. Ales' primary area of responsibility is leading the Prague Solaris G11n team focused on Solaris/OpenSolaris G11n engineering (development) and QA (testing). It covers areas like Solaris locale libraries, keyboards and input methods, fonts, etc. Apart from that Ales is also driving the activities related to community translation of OpenSolaris and leading Community Translation Interface project - http://cti.sunvirtuallab.com. Ales joined Sun in 2003 as QA engineer and during last 6 years he changed different positions - from QA to team lead and SW Engineering Manager positions. Prior to Sun, Ales held engineering position in a small local company as Java ME Developer. Ales holds Ph.D. degree in Technical Cybernetics and MS in Electrical Engineering and Computer Science from Technical University of Ostrava.
Coffee and Snacks will be served during the coffee breaks in the foyer.
Lunch will be served during the lunch breaks in the restaurant at the Dorinth hotel.