Develop and deploy your next
app on the IBM Bluemix
|Improve the performance of function calls with OpenPOWER ABI
This article is to explain what OpenPOWER application binary interface (ABI)introduces to improve performance of function call. Different from the 64-bit PowerPC ELF ABI Supplement 1.9 (ELF ABI v1), OpenPOWER ABI gets rid of function descriptor and doesn't require callers to initialize environment any more. Aligned with current industry practice, it makes the callees set up the TOC pointer in place, introduces dual entry to ensure the establishment as required, and uses trampoline to support lexical nesting function calls.
|10 Jul 2015|
|Optimization techniques for library functions using IBM PowerPC processors
This article explains the various optimization techniques in power assembly so as to make applications run faster. Applying certain techniques in IBM® PowerPC® processor-specific applications improves the performance of the program. Some of the following techniques are now applied on Linux glibc string and memory functions and there is a significant amount of performance improvement. This article is intended for IBM AIX and Linux programmers who write assembly code for performance improvement in IBM Power Architecture.
|09 Jul 2015|
|Docker for Linux on Power Systems
Docker is a tool for deploying, executing and managing containers. This article provides links to Linux on Power Systems Docker binaries and the steps to install them.
|09 Jul 2015|
|OpenMP support in IBM XL compilers
The IBM XL Fortran and XL C/C++ for Linux on Power little endian compilers support the OpenMP API V3.1 and some selected V4.0 features. This enables the compiler to use the multicore hardware to improve performance. This article describes the OpenMP features supported in the latest XL compilers. It also includes some examples to illustrate the benefits of using these new features.
|29 Jun 2015|
|Accelerating performance with inline assembly using IBM XL C/C++ compiler on IBM z Systems
IBM® XL C/C++ compiler Version 1 for Linux on z Systems was released in 2015. This marked the first time inline assembly feature was supported by IBM compiler for Linux on z Systems. With inline assembly, software engineers are able to further accelerate the execution of applications by handcrafting the assembler codes for the most performance-sensitive parts. This feature unleashes the hardware advantage of IBM z Systems™ as well as programmer ingenuity to realize the development of high-performance applications. The objective of this article is to introduce the assembler instructions on z Systems to be used with inline assembly. The target audience are advanced software engineers who are interested in going beyond the extent of the optimizations provided by the compiler to fine tune the most performance-sensitive code section of high-performance applications on z Systems.
|17 Jun 2015|
|Problem reporting for IBM PowerKVM host through IBM Electronic Service Agent for IBM
This article explains the use of IBM
|02 Jun 2015|
|Build a remote-controlled Raspberry Pi 2 monitor for your IBM Bluemix apps
Demystify the Internet of Things with a hands-on project that uses the IBM Internet of Things Foundation to interconnect your devices and apps. Set up a Raspberry Pi 2 to monitor uptime and access time for a running IBM Bluemix app, capturing the results in a graphing app that you can deploy to Bluemix. And code a desktop application that controls the Raspberry Pi 2 monitor remotely.
|28 Apr 2015|
|Explore the OpenStack REST APIs for PowerVC
IBM Power Virtualization Center Express Edition (PowerVC) is an IaaS cloud solution designed to make it easier to build and manage virtual resources in a Power Systems Software Defined Environment or a cloud infrastructure. It is primarily based on OpenStack and includes OpenStack industry-standard application programming interfaces. Learn about the APIs for each OpenStack component and the tasks the APIs can help you complete.
|16 Apr 2015|
|Achieving high performance for Advanced Encryption Standard (AES) applications
This article provides a detailed analysis about the new Advanced Encryption Standard (AES) built-in functions provided by IBM XL compilers. It explores the code that the compilers generate to demonstrate the performance gained by using the built-in functions. This is critical for high-performance AES applications, especially when many of them cannot be parallelized due to the nature of operation modes, such as chaining mode [for example, cipher block chaining (CBC) and propagating cipher block chaining (PCBC)] or feedback mode [cipher feedback (CFB) and output feedback (OFB)]. If you are a software engineer who is interested in achieving high performance for applications on IBM POWER8 processors, this article is for you.
Also available in: Japanese
|02 Apr 2015|
|Developing C/C++ cross-compiled applications for Linux on Power systems
This article explains how to use the integrated environment provided by the IBM SDK for Linux on Power for developing cross-compiled applications for IBM Power servers using IBM Advance Toolchain and QEMU usermode. The SDK is a free, Eclipse-based integrated development environment (IDE), which integrates C/C++ source development with the Advance Toolchain, Post-Link Optimization, and classic Linux performance analysis tools, including Oprofile, Perf, and Valgrind.
|07 Jan 2015|
|Targeting your applications – what little endian and big endian IBM XL Fortran compiler differences mean to you
The IBM® POWER8™ platform supports operating systems that use big endian or little endian byte ordering. Migrating programs written for a big endian operating system to a little endian operating system may require code changes to maintain program behaviour or results. There are differences that need to be considered with regards to vectors, storage association between items of different sizes, 16-byte reals, complex numbers, and unformatted data files. The application binary interface (ABI) implemented in IBM XL Fortran for little endian Linux on Power Systems is different than the ABI implemented in the big endian distributions. New options and intrinsic procedures have been added to help with porting. This article describes these differences, new options, and intrinsic procedures and makes suggestions about code changes to port code to IBM XL Fortran on POWER8.
|12 Dec 2014|
|Targeting your applications - what little endian and big endian IBM XL C/C++ compiler differences mean to you
The IBM® POWER8™ platform supports operating systems that use big endian or little endian byte ordering. Migrating programs written for a big endian operating system to a little endian operating system may require code changes to maintain program behaviour or results. There are differences that need to be considered with regards to vectors, storage association between items of different sizes, long doubles, complex numbers, and serialization. The application binary interface (ABI) implemented in IBM XL C/C++ for little endian Linux on Power Systems is different than the ABI implemented in the big endian distributions. New options and built-in functions have been added to help with porting. This article describes these differences, new options, and built-in functions and makes suggestions about code changes to port code to IBM XL C/C++ on POWER8.
|12 Dec 2014|
|Detecting bootable IBM Power server ISO images
Most ISO images use an ISO 9660 extension that allows the image to be bootable by the basic input/output system (BIOS). IBM Power Systems firmware, on the other hand, does not use such extension. This means that the detection of the bootability of images differ between computer architectures. In software such as hypervisors or even virtual machine (VM) managers, this detection can't consume too many resources and take too much time due to the number of the images they need to manipulate. This makes options like such as trying to boot the image by trial and error or even trying to mount the image in the file system not viable. This article describes a way to detect if an IBM Power server image is bootable by reading the ISO data stream directly, showing a working Python code that illustrates the concepts.
|20 Oct 2014|
|Develop your own filesystem with FUSE
With Filesystem in Userspace (FUSE), you can develop a user space filesystem framework without understanding filesystem internals or learning kernel module programming. Follow this simple, step-by-step guide to install, customize, and enable FUSE and AFS, so you can create your own fully functional filesystem in user space in Linux.
|14 Oct 2014|
|How to build IBM PowerLinux applications on Intel x86 servers
The real value of the IBM® Advance Toolchain for PowerLinux cross compiler is that developers can compile and build applications for the IBM Power Architecture® on a development platform they are already familiar with which, in most cases, is x86. This article explains how developers can use the Toolchain cross compiler and easily built their source code to run on Power Architecture. The article also answers questions about cross-compiled application performance, functionality, and the ability to debug the cross-compiled applications natively on a PowerLinux server.
|18 Sep 2014|
|Use Software Defined Networking to optimize your IaaS
Explore Software Defined Networking (SDN)
|24 Jun 2014|
|Use POWER8 services on IBM Bluemix
Customize a simple Node.js application to use an external (user-provided) POWER 8-based service when it runs on IBM Bluemix.
|12 Jun 2014|
|Why Linux on Power?
Running your Linux-based applications on IBM® Power® hardware offers a powerful blend of performance, reliability, and security. In this article, you will be exposed to many of the strategic advantages that IBM Power Systems™ can offer and you might be surprised by the low cost of the various deployments. Learn about the tools that IBM uses to enhance your Linux experience and fully understand IBM’s future commitments to Linux on Power.
|07 May 2014|
|Upgrading SUSE Linux Enterprise Server with Zypper
This article explains how to use Zypper for upgrading the SUSE Linux Enterprise Server (SLES), and also describes the process to create and modify the repository configuration files.
|18 Apr 2014|
|Continuous integration setup for IBM System Planning Tool
This article describes the detailed steps to configure your own continuous integration build set up for the IBM® System Planning Tool (SPT) without making use of any other publicly available continuous integration tools. This setup comes with the scheduled code extraction and build, scheduled test suite execution, and scheduled code coverage report generation features. You can use this article as a reference while setting up your own continuous integration environment for any of your projects as it gives step-by-step configuration details. This greatly reduces your research, exploration, and development time of the project setup.
Also available in: Russian
|07 Mar 2014|
|Linux on 4 KB sector disks: Practical advice
Advanced Format disks use 4,096-byte sectors rather than the more common 512-byte sectors. This change is masked by firmware that breaks the 4,096-byte physical sectors into 512-byte logical sectors for the benefit of the operating system, but the use of larger physical sectors has implications for disk layout and system performance. This article examines these implications, including benchmark tests illustrating the likely real-world effects on some common Linux file systems. As Advanced Format disks have become the norm, understanding how to cope with these disks is a vital skill for anyone who wants to avoid serious performance penalties associated with suboptimal configuration.
|06 Mar 2014|
|IBM Entrepreneur Week
IBM Entrepreneur Week is a one-of-a-kind opportunity for you to meet, interact, and connect with entrepreneurs, venture capitalists, industry leaders, and academics from around the world. If you're a startup or entrepreneur, join us onlne for our inaugural IBM Entrepreneur Week, 3-7 Feb 2014. There will be events taking place online and in locations worldwide, including face-to-face and virtual mentoring sessions, a women entrepreneur-focused event, and a LiveStream broadcast of the SmartCamp Global Finals in San Francisco.
|15 Jan 2014|
|Create Linux and Windows images for OpenStack private clouds
This article proposes a new way to construct Linux and Windows images for private clouds built with the OpenStack cloud operating system. Current image-creation methods for OpenStack environments are cumbersome and time-consuming. The authors present an online, self-service method that makes image construction faster and easier for operators and end users of private clouds.
|13 Jan 2014|
|DB2 10.1 for Linux, UNIX, and Windows DBA certification exam 611 prep, Part
1: Server management
This tutorial helps you learn the skills required to manage DB2 database servers, instances and databases. Furthermore, you will get introduced to DB2 autonomic computing capabilities and you will learn to use IBM data Studio to perform database administration tasks such as job scheduling and generating diagrams of access plans. This tutorial prepares you for Part 1 of the DB2 10.1 DBA for Linux, UNIX, and Windows certification exam 611.
|05 Dec 2013|
|Recover from a failed Linux boot
If your Linux computer fails to boot after a kernel upgrade, disk swap, or other system change, you're not helpless. The Grand Unified Bootloader (GRUB) gives you ways to control the boot process and recover. Or, if necessary, emergency boot disks that you create with an external tool can come to the rescue. Learn procedures and GRUB commands that can help you boot in problem situations, and find out about a life-saving external tool for BIOS-based systems.
|22 Oct 2013|
|Common threads: Awk by example, Part 1
Awk is a very nice language with a very strange name. In this first article of a three-part series, Daniel Robbins will quickly get your awk programming skills up to speed. As the series progresses, more advanced topics will be covered, culminating with an advanced real-world awk application demo.
|11 Oct 2013|
|Debugging tools and techniques for Linux on Power
Debugging is a major software development activity, which as an application developer, you cannot avoid. Effective debugging can not only shorten the software development cycle, but can also save costs. This article introduces techniques for locating bugs in user-space C/C++ and Java(TM) applications and describes some of the debugging tools available on Linux(TM) for POWER(TM) architecture.
|02 Oct 2013|
|Create LaTeX documents graphically with LyX
LyX is a graphical tool, with a familiar drop-down and content-driven menu system, for writing and editing LaTeX documents. TeX and its higher-level macro language, LaTeX, are powerful document markup languages that are the de facto standard for Linux
|16 Aug 2013|
|Enhance distributed development with IBM Rational Developer for AIX and Linux Version 9.0
IBM Rational Developer for AIX and Linux Version 9.0 allows you to use a single project to develop, build, test, debug, and performance tune your application across multiple systems at the same time. Mike Kucera describes the features that enable distributed development.
|09 Jul 2013|
|Automate and manage systems installation with Cobbler
Cobbler simplifies system provisioning by centralizing the tasks that are involved in setting up and administering an installation server. This article discusses some of Cobbler's features, how to install it, and how to create a configuration suitable for automatically installing multiple client machines.
|07 Jun 2013|
|Multi-disk management for IBM Systems Director VMControl: Part 3
IBM® Systems Director is a platform management solution that is used to manage physical and virtual systems. IBM Systems Director provides systems management personnel with a single pane of glass, helping reduce IT management complexity and cost. IBM Systems Director VMControl is an advanced plug-in installed on top of IBM Systems Director to provide the virtualization capabilities. This tutorial talks about the multi-disk support while deploying workload using the VMControl Representational State Transfer (REST) application programming interfaces (APIs) and command-line interface (CLI).
|28 May 2013|
|Multi-disk management for IBM Systems Director VMControl: Part 2
IBM Systems Director is a platform management solution that is used to manage physical and virtual systems. IBM Systems Director provides systems management personnel with a single pane of glass, helping reduce IT management complexity and cost. VMControl is a advanced plug-in installed on top of IBM Systems Director to provide the virtualization capabilities. This tutorial talks about the multi-disk management and revision control for capturing virtual appliances using the VMControl Representational State Transfer (REST) application programming interfaces (APIs) and command line interface (CLI).
|14 May 2013|
|Multi-disk management for IBM Systems Director VMControl: Part 1
IBM Systems Director is a platform management solution that is used to manage physical and virtual systems. IBM Systems Director provides systems management personnel with a single pane of glass, helping reduce IT management complexity and cost. IBM Systems Director VMControl™ is an advanced plug-in installed on top of IBM Systems Director to provide virtualization capabilities. This tutorial talks about multi-disk management for virtual server using the VMControl Representational State Transfer (REST) application programming interfaces (APIs) and command-line interface (CLI).
|06 May 2013|
|Open source desktop publishing with Scribus
Scribus is an open source, graphical desktop publishing (DTP) tool that focuses on layout, frames, styles, color management, and intercolumn document flow. Scribus is free software that runs on the Linux, Windows, and Mac OS X platforms, and provides most of the capabilities of traditional DTP tools at no cost.
|16 Apr 2013|
|Using Linux in a Windows world
Linux is the operating system of choice for most servers on the Internet and is growing in popularity as a desktop operating system. However, simply migrating to Linux on your desktop doesn't guarantee that you can still interact with all of the enterprise resources that your job or interests may require. This article discusses additional configuration tasks that you may need to undertake to interact with legacy Microsoft Windows files and file servers and use new network hardware from your desktop Linux system.
|03 Apr 2013|
|Process real-time big data with Twitter Storm
Storm is an open source, big-data processing system that differs from other systems in that it's intended for distributed real-time processing and is language independent. Learn about Twitter Storm, its architecture, and the spectrum of batch and stream processing solutions.
|02 Apr 2013|
|IBM AIX device driver development
This tutorial illustrates the IBM® AIX® device driver framework and related application programming interfaces (APIs). Here, we shall discuss about the device switch structure, API to register device switch methods, major and minor number management, and moving data from kernel to user space.
|28 Mar 2013|
|Bash by example, Part 2
In his introductory article on bash, Daniel Robbins walked you through some of the scripting language's basic elements and reasons for using bash. In this, the second installment, Daniel picks up where he left off and looks at bash's basic constructs like conditional (if-then) statements, looping, and more.
Also available in: Japanese
|18 Feb 2013|
101: Search text files using regular expressions
Learn how to use regular expressions, and then use them to find things in files on your filesystem. You can use the material in this article to study for the LPI 101 exam for Linux system administrator certification, or just to learn for fun.
|18 Feb 2013|
|IBM Systems Director VMControl resource lifecycle management: part 4
IBM Systems Director is a platform management solution that is used to manage physical and virtual systems in a multisystem environment. It supports various virtualization technologies and multiple operating systems across IBM and non-IBM platforms. IBM Systems Director VMControl is an advanced manager of IBM Systems Director, a free-to-own set of platform management tools. This tutorial is part of a series on VMControl resource lifecycle management. This tutorial explains about server system pool lifecycle using the VMControl Representational State Transfer (REST) application programming interfaces (APIs).
|04 Feb 2013|
|Customizing and monitoring Linux system startup
Minimizing the amount of time required to boot a computer system is important regardless of whether you are turning on your home computer or restarting a server that provides services to thousands of users. This article discusses the various system startup and shutdown mechanisms that are used on different Linux distributions. It explains how to integrate new services, customize existing startup configurations, and examine the behavior and performance of system startup configurations.
|16 Dec 2012|
101: Create partitions and filesystems
Learn how to create partitions on a disk drive and how to format them for use on a Linux system as swap or data space. You can use the material in this article to study for the LPI 101 exam for Linux system administrator certification, or just to learn about partitions and Linux filesystems for your own use.
|04 Dec 2012|
101: Boot managers
Learn how to choose and configure a boot manager for your Linux system. You can use the material in this article to study for the LPI 101 exam for Linux system administrator certification, or just to learn for fun.
|04 Dec 2012|
101: A roadmap for LPIC-1
Use this roadmap to find IBM developerWorks articles that will help you learn and review basic Linux tasks. And if you're also pursuing professional certification as a Linux system administrator, these articles can help you study for the Linux Professional Institute Certification (LPIC) exam 101 and exam 102. This roadmap is organized according to the 43 objectives in the 101 and 102 exams, which you are required to pass for LPI level 1 certification.
|04 Dec 2012|
101: Hard disk layout
Learn how to design a partition layout for disks on a Linux system. You can use the material in this article to study for the LPI 101 exam for Linux system administrator certification, or just to learn for fun.
|27 Nov 2012|
|vi intro -- the cheat sheet method
This tutorial shows how to use vi, a powerful visual editor. Using an accelerated cheat sheet method, this tutorial aims to make you a proficient vi user without requiring a huge time commitment. You will quickly learn how to move around, edit text, use insert mode, copy and paste text, and use important vim extensions like visual mode and multi-window editing.
|16 Nov 2012|
|Wrap GObjects in Python
Learning how to wrap GTK+ C modules for use in Python will enable you to use a C-coded GObject in Python whenever you like, whether or not you're especially proficient in C.
|15 Nov 2012|
|Managing VMs with the Virtual Machine Manager
Explore the use of virt-manager, its capabilities on modest hardware, and how to use it to manage and monitor live VM performance.
|31 Oct 2012|
|Virtualize the IBM DB2 pureScale Feature on Linux using Kernel-based Virtual Machine
Learn how you can improve your return on investment when you deploy the IBM DB2 pureScale Feature with Linux on IBM System x servers. Modern System x servers have an ample number of cores and amount of memory and I/O capability. By using virtualization technology, you can deploy multiple DB2 pureScale instances on a common infrastructure and achieve greater efficiency.
|25 Oct 2012|
|Learning PHP, Part 1: Register for an account, upload files for approval, and view and download approved files
This tutorial is Part 1 of a three-part "Learning PHP" series teaching you how to use PHP through building a simple workflow application. This tutorial walks you through creating a basic PHP page using HTML forms and covers accessing databases.
|23 Oct 2012|
|Implement POSIX Semaphore APIs using System V Semaphores APIs
Need to use POSIX APIs but the development platform doesn't support them (such as z/OS)? Don't let that hold you back. Learn how you can implement POSIX Semaphore APIs using System V Semaphore APIs to bring your code to more platforms and keep it maintainable.
|16 Oct 2012|
|Explore Python, machine learning, and the NLTK library
Machine learning lies at the intersection of IT, mathematics, and natural language, and is typically used in big-data applications. This article discusses the Python programming language and its NLTK library, then applies them to a machine learning project.
|09 Oct 2012|
|Ensure a resilient virtual server
IBM PureFlex System comes with the hardware pre-integrated and the management stack pre-loaded for convenience, but there are a few manual steps you need to do before it can be used to host resilient virtual servers. In this article, the authors explain and show how to set up and deploy a resilient virtual server (in this article, Red Hat's KVM hypervisor is used).
|19 Sep 2012|
101: Runlevels, shutdown, and reboot
Learn to shut down or reboot your Linux system, warn users that the system is going down, and switch to a more or less restrictive runlevel. You can use the material in this article to study for the LPI 101 exam for Linux system administrator certification, or just to learn about shutting down, rebooting, and changing runlevels.
|18 Sep 2012|
|Introducing Spring Roo, Part 7: Develop Spring MongoDB applications using Spring Roo
MongoDB is a very popular document-oriented, horizontally-scalable NoSQL datastore. With Spring Roo version 1.2, you can build Spring applications with MongoDB as data storage solutions. Investigate MongoDB and then build an enterprise Spring MongoDB application using Spring Roo.
|07 Sep 2012|
|Build custom embedded Linux distributions with the Yocto Project
The Yocto Project is an open source project formed with the goal of making embedded Linux development easier and more portable across architectures. This article introduces the project and provides a step-by-step walk through on how to get started.
|28 Aug 2012|
|Understand Representational State Transfer (REST) in Ruby
REST, or Representational State Transfer, is a distributed communication architecture that is quickly becoming the lingua franca for clouds. It's simple, yet expressive enough to represent the plethora of cloud resources and overall configuration and management. Learn how to develop a simple REST agent from the ground up in Ruby to learn its implementation and use.
|17 Aug 2012|
|Explore Linux as a scientific computing platform
Linux is a great platform for scientific computing and is heavily used by the academic community for numerous tasks. While many open source projects address specific applications, the Sage mathematical project delivers a more generic problem-solving capability. Python is the primary language for many of the highest profile scientific applications, which this article discusses.
|07 Aug 2012|
|Accelerate to Green IT - A practical guide to application migration and re-hosting
This guide has been developed based on implementation experience in moving application workloads from a distributed environment, such as AIX workload on Power or pSeries, RS 6000 hardware, Solaris workload on Sun hardware or Linux workload on x86 hardware (that is, IBM eServer to IBM System z primarily IBM System z9 or z10 models).
|16 Jul 2012|
|Make the most of large drives with GPT and Linux
Once a remote prospect, an important barrier in disk storage has become a reality: the venerable master boot record (MBR) partitioning scheme can't fully handle disks larger than 2.2TB (2TiB). With disks as large as 3TB readily available and with much larger RAID arrays common, alternatives to the MBR partitioning scheme have become important to understand. The heir apparent is the GUID Partition Table (GPT). Learn how to make sure your Linux system is fully prepared for the future of disk storage.
|03 Jul 2012|
|Secure programming with the OpenSSL API, Part
1: Overview of the API
Learning how to use the API for OpenSSL -- the best-known open library for secure communication -- can be intimidating, because the documentation is incomplete. Fill in the gaps, and tame the API, with the tips in this article. After setting up a basic connection, see how to use OpenSSL's BIO library to set up both a secured and unsecured connection. And learn a bit about error detection as well.
|28 Jun 2012|
|Linux for Windows systems administrators: Administer Linux with GNOME desktop tools
Working with Linux doesn't mean your work is restricted to command-line tools. True, most experienced Linux administrators use command-line tools for convenience and more efficient administration. However, the GNOME project provides some excellent tools for managing a Linux server using a graphical user interface (GUI). Using your Microsoft Windows background experience, you might find that these tools make the transition less dramatic.
|26 Jun 2012|
|Create a working compiler with the LLVM framework, Part 1
The LLVM compiler infrastructure provides a powerful way to optimize your applications regardless of the programming language you use. Learn the basics of the LLVM in this first article of a two-part series. Building a custom compiler just got easier!
|19 Jun 2012|
|Create a working compiler with the LLVM framework, Part 2
The LLVM compiler infrastructure provides a powerful way to optimize your applications regardless of the programming language you use. Learn to instrument code in LLVM, using the clang API to preprocess C/C+ code in this second article of a two-part series.
|19 Jun 2012|
|Introducing the 3.3 and 3.4 Linux kernels
In March 2012, version 3.3 of the Linux kernel was released (followed in by version 3.4 in May). In addition to a plethora of small features and bug fixes, several important changes have arrived with these releases, including the merging of the Google Android project; merging of the Open vSwitch; several networking improvements (including the teaming network device); and a variety of file system, memory management, and virtualization updates. Explore many of the important changes in versions 3.3 and 3.4, and have a peek at what's ahead in 3.5.
|19 Jun 2012|
|Evaluate performance for Linux on POWER
Learn to evaluate Linux on POWER performance issues that focus on compiled language (such as C or C++) environments. This article explains the POWER7 CPI model and demonstrates the use of commonly available Linux tools to show potential CPU stalls, pipeline hazards, and performance issues. Analyze and optimize an algorithm for POWER7 in the final section.
|12 Jun 2012|
|Porting applications to Linux for System z
Server consolidation based on Linux for IBM System z offers advantages, but moving existing applications requires some specialized knowledge. In this article, get general advice on how to organize your porting project, including technical details on mainframe virtualization, byte-ordering, and address calculation specific to System z. This article also covers how development tools (compiler, linker, debugger) are supported on System z, and introduces IBM's free-of-charge Migration Kit for Solaris OS to Linux.
|08 Jun 2012|
|Track KVM guests with libvirt and the Linux audit subsystem
Libvirt is an important tool for managing virtualized environments on Linux hosts. An audit trail of events that occur on the host during libvirt's execution is often necessary for monitoring, compliance, forensics, and other purposes. This article describes how to use the Linux audit subsystem on the host to track operations performed by libvirt and how to correlate the events with other host events to provide a consistent and comprehensive view of changes performed through libvirt.
|05 Jun 2012|
|Secure Linux: Part 1. SELinux – history of its development, architecture
and operating principles
Learn about the basic milestones in the development, architecture, and operating principles of Security-Enhanced Linux, the powerful remix of Linux providing mandatory access control. This article was specially selected for translation by developerWorks Russia as an example of developerWorks world-wide offerings.
|30 May 2012|
|Practice: Process logs with Apache Hadoop
Logs are an essential part of any computing system, supporting capabilities from audits to error management. As logs grow and the number of log sources increases (such as in cloud environments), a scalable system is necessary to efficiently process logs. This practice session explores processing logs with Apache Hadoop from a typical Linux system.
|30 May 2012|
|Optimizing resource management in supercomputers with SLURM
The arms race of supercomputers is fascinating to watch as their evolving architectures squeeze out more and more performance. One interesting fact about supercomputers is that they all run a version of Linux. To yield the greatest amount of power from an architecture, the SLURM open source job scheduler (used by the Chinese Tianhe-IA supercomputer, and the upcoming IBM Sequoia supercomputer) optimizes resource allocation and monitoring. Learn about SLURM and its approach to parallelizing workloads in clusters.
|22 May 2012|
|LPI exam prep: Network client management
In this tutorial, the fifth in a series of seven tutorials covering intermediate network administration on Linux, David Mertz continues preparing you to take the Linux Professional Institute Intermediate Level Administration (LPIC-2) Exam 202. By following this tutorial, you will examine several protocols' centralized configuration of network settings on clients within a network. DHCP is widely used to establish basic handshaking to clients machines such as assigning IP addresses. At a higher level, NIS and (more often) LDAP are used for arbitrary shared information among machines on a network. This tutorial also discusses PAM, which is a flexible, networked, user authentication system.
|17 May 2012|
|Anatomy of Security-Enhanced Linux (SELinux)
Linux has been described as one of the most secure operating systems available, but the National Security Agency (NSA) has taken Linux to the next level with the introduction of Security-Enhanced Linux (SELinux). SELinux takes the existing GNU/Linux operating system and extends it with kernel and user-space modifications to make it bullet-proof. If you're running a 2.6 kernel today, you might be surprised to know that you're using SELinux right now! This article explores the ideas behind SELinux and how it's implemented.
|17 May 2012|
|Linux for Windows systems administrators: Understand how to execute applications that run on Linux
Using applications is the main purpose of a Linux server. Whether your newly installed application runs from a desktop or the command line, this article helps you use your Microsoft Windows experience to quickly understand how to run applications on Linux.
|17 May 2012|
|Use of IPSEC in Linux when configuring network-to-network and point-to-point VPN connections
This article takes a detailed look at the design principles, the basis for deploying VPN, and the IPSEC protocol concept, providing a description of the general features of IPSEC and of the mechanisms required for its implementation. This article was specially selected for translation by developerWorks Russia as an example of developerWorks world-wide offerings.
|15 May 2012|
|Add Linux power to wireless routers with advanced tips and tricks for DD-WRT
DD-WRT brings all the power of the Linux networking stack to inexpensive wireless routers, turning a consumer router into a mighty networking powerhouse. Learn how to install and secure DD-WRT, and learn about the powerful, flexible command line behind the GUI.
|08 May 2012|
|Protect your data at the speed of light with gKrypt, Part 1
Meet the gKrypt engine, the world's first package to employ general purpose graphics units (GPGPUs) for data encryption, which is an important tool for information security. It uses an Advanced Encryption Standard (AES) based 256-bit block cipher to provide robust security. In this Part 1 of a two-part series, explore the AES, the GPU port of the Rijndael algorithm for Linux, the parallelizing of the AES algorithm, and the use of the gKrypt Engine supporting CUDA for NVIDIA-based GPUs.
|01 May 2012|
|Meet six misunderstood Ruby features
Suppose you are a C++ developer and you need to do some prototyping quickly in Ruby. When you pick up a Ruby reference book like the Pickaxe or browse the Ruby site, you see familiar constructs like class declaration, support for threads, and exception handling. Just when you thought you knew how Ruby works, you realize that concurrency in your Ruby code is not behaving like Boost threads, catch and throw are not what they seem, and others have used something called self all over the place in their Ruby script. Welcome to Ruby!
|01 May 2012|
|Protect your data at the speed of light with gKrypt, Part 2
Meet the gKrypt engine, the world's first package to employ general purpose graphics units (GPGPUs) for data encryption. It uses an Advanced Encryption Standard (AES) based 256-bit block cipher. This is the second article in a two-part series on AES encryption and the gKrypt engine. Part 1 introduced gKrypt and explained the AES algorithm in detail, its parallel breakdown and how to map it on a massive GPU architecture using the Compute Unified Device Architecture (CUDA). Part 2 looks at how AES is implemented on CUDA.
|01 May 2012|
|Enable multiuser logins with VNC
Virtual Network Computing (VNC) is a popular tool for providing remote access to computers. The usual VNC configuration is optimized for single-user workstations, and logging in to the VNC port directly accesses a single user's desktop. This configuration is awkward on multiuser computers, however. Fortunately, you have an alternative. By linking VNC to a Linux computer's normal X Display Manager Control Protocol (XDMCP) server, accessing the VNC port enables users to provide their user names and passwords, thereby enabling a single VNC server instance to handle multiple user logins.
|24 Apr 2012|
|Implement strong WiFi encryption the easy way with hostapd
Keep wireless security simple. hostapd, the Host Access Point daemon provides solid WiFi encryption that meets enterprise standards without all the overhead of running FreeRADIUS. Learn more about this tool and how to incorporate it into your environment.
|10 Apr 2012|
PubSubHubbub is an open protocol of web hooks for notifications of updates to news feeds in a publish/subscribe framework. It is defined as a set of HTTP server-to-server interactions integrated into Atom and RSS extensions. Despite the odd name, PubSubHubbub is fairly straightforward to use for designing applications with a lot of information updates. Learn about the standard and open-source implementations and support software for PubSubHubbub.
|03 Apr 2012|
|LPI exam prep: Mail and news
This is the second of seven tutorials covering intermediate network administration on Linux. In this tutorial, David Mertz discusses how to use Linux as a mail server and as a news server. Overall, e-mail is probably the main use of the Internet, and Linux is perhaps the best platform for running e-mail services on. This tutorial covers mail transport, local mail filtering, and mailing list maintenance software. It also briefly discusses server software for the NNTP protocol.
|29 Mar 2012|
101: RPM and YUM package management
Learn how to install, upgrade and manage packages on your Linux system. This article focuses on the Red Hat Package Manager (RPM) developed by Red Hat, as well as the Yellowdog Updater Modified (YUM) originally developed to manage Red Hat Linux systems at Duke University's Physics department. You can use the material in this article to study for the LPI 101 exam for Linux system administrator certification, or just to explore the best ways to add new software and keep your system current. [Typographical errors noted by alert readers (see Comments at the end of this article) have been corrected, thanks! --Ed.]
|19 Mar 2012|
|Look at Linux, the operating system and universal platform
Linux is everywhere. If you peer into the smallest smart phone, to the virtual backbone of the Internet, or the largest and most powerful supercomputer, you'll find Linux. That's no simple feat given the range of capabilities expected from these platforms. Discover the omnipresence of Linux and how it supports devices large and small as well as everything in between.
|13 Mar 2012|
|Process your data with Apache Pig
Apache Pig is a high-level procedural language for querying large semi-structured data sets using Hadoop and the MapReduce Platform. Pig simplifies the use of Hadoop by allowing SQL-like queries to a distributed dataset. Explore the language behind Pig and discover its use in a simple Hadoop cluster.
|28 Feb 2012|
|Repair cloud virtual machine cloning errors
External data provisioning requirements such as network configurations like IP addresses can cause problems when cloning a virtual machine to use in a new environment. If the external data is not available during the process, the reconfiguration of the VM will likely be incomplete. The authors offer a way to handle this problem, even without much knowledge of the application or without a form of activation scripting to help. Runtime Image Activation (RIA) is a prototype command-line interface that lets you orchestrate networking techniques to make sure your cloned VMs are appropriately configured.
|20 Feb 2012|
|Boost IBM InfoSphere Streams performance with Linux channel bonding
Have you ever wondered if Linux channel bonding would allow you to get faster throughput using IBM InfoSphere Streams? We have answered that question when running InfoSphere Streams release 126.96.36.199 on Red Hat Enterprise Linux release 5.5. In this article, we describe what channel bonding is at a high level, how we set up our test environment, and the results we observed. In our experiments, channel bonding increased bandwidth by as much as 68 percent.
|16 Feb 2012|
|Data analysis and performance with Spark
Spark is an interesting alternative to Hadoop, with a focus on in-memory data processing. This practice session explores multithread and multinode performance with Scala, Spark, and its tunable parameters.
|14 Feb 2012|
|Pure speed with mod_pagespeed
mod_pagespeed is a module from Google for Apache HTTP Servers that can improve the page load times of your website. It programmatically and automatically incorporates all the best practices for a speedy website into your site, and requires only minimal configuration. With mod_pagespeed, Apache web hosters can improve website speed quickly and easily.
|31 Jan 2012|
|Linux for Windows systems administrators: Managing and monitoring the extended file system
Windows and Linux use different file system architectures. Fortunately, your Windows experience can put you on the fast track to being comfortable managing and monitoring the Linux extended file systems. This article helps you learn your way around the extended disk file system family on Linux.
|17 Jan 2012|
|Scripting KVM with Python, Part 2: Add a GUI to manage KVM with libvirt and Python
Further explore how to use Python to create scripts for managing virtual machines using KVM. Learn how to add a GUI to expand on the simple status and display tool.
|17 Jan 2012|
|Firewall uptime and security with iptables
Iptables is the standard Linux firewall application. It is easy to configure and maintain while powerful enough to provide the control expected from a high-end appliance. Learn how to get started with iptables, recover from common issues, and simulate a small-office usage scenario.
|04 Jan 2012|
|Learn Linux, 302 (Mixed environments): Performance tuning
In preparation for taking the Linux Professional Institute Certification exam LPI-302 for systems administrators, learn how to measure Samba performance and make Samba work faster.
|20 Dec 2011|
|Learn Linux, 302 (Mixed environments): A roadmap for LPI-302
Use this roadmap to find IBM developerWorks articles that help you learn and review the fundamentals of supporting Linux in a mixed UNIX/Microsoft environment. If you are also pursuing professional certification as a Linux systems administrator, these articles can help you study for the Linux Professional Institute Certification exam LPI-302. This roadmap is organized according to the 21 objectives in the LPI-302 exam, which is required to get the LPIC-3 specialization in mixed environments.
|13 Dec 2011|
|Learn Linux, 302 (Mixed environments): Samba security
In preparation for taking the Linux Professional Institute Certification exam LPI-302 for systems administrators, learn how to secure Samba and troubleshoot problems related to security.
|13 Dec 2011|
|Evolution of shells in Linux
Pointing and clicking is fine for most day-to-day computing tasks, but to really take advantage of the strengths of Linux over other environments, you eventually need to crack the shell and enter the command line. Lots of command shells are available, from Bash and Korn to C shell and various exotic and strange shells. Learn which shell is right for you. [Note: Minor corrections were made to Listings 2 and 3.]
|09 Dec 2011|
|Learn Linux, 302 (Mixed environments): Integration with Active Directory
Since the release of Windows 2000, Microsoft has offered Active Directory as its directory service, and later versions have renamed it Active Directory Domain Services (AD DS). AD DS leverages the popular LDAP for resource management, Kerberos for authentication, and tight integration with DNS for name resolution. If you currently use AD DS, integrating a Linux server can help centralize identity management and maintenance for Linux printing and file services. However, doing so can be challenging. Fortunately, Samba provides a solution for Linux integration with AD DS that requires no modification to the directory service. [Note: We corrected the Listing 4 caption and clarified the section on "Using the net command" per reader feedback.]
|08 Dec 2011|
|Scripting KVM with Python, Part 1: libvirt
This two-part series explores how to use Python to create scripts for managing virtual machines using Kernel-based Virtual Machine (KVM). In this installment, learn the basics of using libvirt and the Python bindings to build a few simple status and display tools.
|06 Dec 2011|
|Learn Linux, 302 (Mixed environments): Linux file system and share/service permissions
In preparation for taking the Linux Professional Institute Certification exam LPI-302 for systems administrators, learn how Samba interacts with the Linux file system and how to manage permissions.
|06 Dec 2011|