Chris Mason
Btrfs
Learn about the latest developments in Btrfs, the next generation file system included in the Linux 3.0 kernel.,
Learn about the latest developments in Btrfs, the next generation file system included in the Linux 3.0 kernel.,
SmartOS is an open source distribution of illumos, currently in production for Joyent's public cloud, where it provides a hypervisor that is secure, flexible and observable. It leverages technologies such as ZFS snapshots and clones for rapid provisioning, KVM and Zones for hardware and OS virtualization, and DTrace to safely understand what's going on inside of guests and the hypervisor. This talk will describe these technologies and their use, including engineering challenges encountered, and discuss opportunities for observing guests such as Linux and Windows.
Cloud Computing introduces new challenges for performance analysis, for both customers and operators of the cloud. Apart from monitoring a scaling environment, issues within a system can be complicated when tenants are competing for the same resources, and are invisible to each other. Other factors include rapidly changing production code and wildly unpredictable traffic surges. For performance analysis in the Joyent public cloud, we use a variety of tools including Dynamic Tracing, which allows us to create custom tools and metrics and to explore new concepts. I'll discuss a collection of these tools and the metrics that they measure. While these are DTrace-based, the focus of the talk is on which metrics are proving useful for analyzing real cloud issues.
Real-time I/O is important in embedded systems as many of the systems are used for Process Control. There are 2 approaches to handling real-time: 1) the Kernel Approach: using RTAI, Xenomi, or PREEMPT_RT and 2) the Hardware Approach: Embedded Micro, FPGA/CPLD (programmable logic). This session will cover the current status of Real-time I/O, and discuss the technical merits of both Kernel and Hardware approaches to handling Real-time I/O and the advantages and disadvantages of each approach. Current best practices also will be discussed with examples of Latency and Jitter in Real-time I/O and how they effect performance and outcome of processes controlled by the Linux System. Examples will be from 3D printing and light CNC.
Pandaboard: Everyone Loves a Bear - I cover where the Pandaboard fits in with the landscape of Open Embedded Platforms and why it currently reigns supreme.
The Pandaboard is awesome hardware yet there are pitfalls that can be thwarted by future adopters and tricks of the trade to ease adoption.
FUSE (File-system in User Space) traditionally uses a very "thin" kernel module that communicates using a message passing interface to a user-level process that does all the interesting work. That approach forces a large number of very fine-grained requests for each high level file-system requests. An alternative to the traditional FUSE design is presented, where the kernel file-system module can do meta-data caching and some aggregation of requests, allowing the rendez-vous with the user-level helper process to be less frequent and more efficient. This allows the elimination of a significant portion of the work normally done by the user-level FUSE library. Also new in this approach is the use of illumos "door calls" (an efficient inter-process communication mechanism inherited from OpenSolaris) for communications between the in-kernel file-system module and the user-level FUSE service program. Experimental results from a prototype of this design are compared with the more traditional implementation, demonstrating some advantages of the new approach.
We will present an overview of the tools and APIs that affect device driver developers, including a sample very simple device driver. We will cover the core DDI, resources to find more information, building the software, the tools to load and test drivers, and some high level debugging strategies.
Devices and platforms based on ARM architecture have become some of the most widely used platforms running Linux as it is used in a large number of mobile and embedded devices. In adopting Linux and open source projects many companies have evolved their working practises, moving from traditional closed development to using open source software components and contributing changes back to upstream projects to enable their platforms and build a strong developer community around them. Given that ARM is used in such a diverse range of platforms, the challenge for software developers and open source project maintainers has been to integrate and maintain contributions in an efficient way and limit code duplication to enable them to scale as the number of contributors increases. The Linux kernel has been a very visible example of this, with Linus Torvalds recently pushing back on contributions forcing some code refactoring and clean-up for redundant implementations. This talk with present the current status of Linux on ARM and how ARM and its partners are addressing these challenges to better support Linux kernel and upstream open source projects. In addition, ARM partners are contributing performance improvements to the Linux kernel and key open source projects to better perform on ARM CPU and platforms where there is a very strong focus on optimizing the balance between power usage and performance. This presentation will also highlight some of Linaro key contributions as a not-for-profit organization created to provide a framework for partners, and open source developers, to collaborate in developing and optimizing open source projects on ARM.