Filter by products, topics, and types of content

(0 Products)

(51 Topics)

(0 Industries)

(7 Types)

1 - 90 of 90 results
Show Summaries | Hide Summaries
View Results
Title none Date down
vStorm Enterprise integrated with Hortonworks Data Platform (HDP) running on IBM Power Systems
Veristorm vStorm Enterprise makes data migration to Hadoop environments flexible, secure and easy. vStorm already supports data movement to Hadoop solutions running on Linux on IBM Power Systems. Read this article for details about how vStorm was tested to integrate with and move data specifically to Hortonworks Data Platform (HDP) on IBM POWER8.
08 Dec 2017
Creating a high availability setup for Linux on Power
This article is about high availability or disaster recovery and fail-over for Linux on Power virtual machines (VMs) or logical partitions (LPARs). The solution works for all Linux distributions available for IBM POWER8 and later processor-based servers. Open source software used in this solution are: DRBD and heartbeat, which are available for all supported distributions. We have used Ubuntu v16.04, supported on IBM Power servers to explain and verify the solution.
Also available in: Chinese  
07 Nov 2017
Installing CentOS 7.2 on IBM Power System S822LC for high-performance computing (HPC) with a USB device
Use this article to install CentOS on an IBM Power System LC server with a USB device. This installation is specifically for installing CentOS on an IBM Power System (OpenPOWER) server.
17 Feb 2017
Enforcing cluster-wide policies for a Kubernetes-based Docker cluster
This article explains how cluster-level policies can be enforced for Kubernetes by using PodSecurityPolicy.
21 Dec 2016
Configuring flannel overlay network with VXLAN for Docker on IBM Power Systems servers
This article explains how to setup flannel based overlay network for Docker containers on IBM Power servers.
21 Dec 2016
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.
Also available in: Chinese   Japanese   Portuguese  
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.
Also available in: Chinese   Japanese  
18 Apr 2014
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.
Also available in: Chinese   Japanese  
22 Oct 2013
Common threads: Awk by example, Part 1: An intro to the great language with the strange name
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.
Also available in: Russian   Japanese  
11 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 users. New users can find them difficult to work with because you must know the available markup tags, the contexts they can be used in, and how to use a text editor and previewing tool. LyX simplifies the entire process of working with LaTeX documents not just on Linux. Learn how to install, use, and customize LyX on Linux, UNIX, Windows, and Mac OS X systems.
Also available in: Chinese   Japanese  
16 Aug 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
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!
Also available in: Chinese   Russian   Japanese  
19 Jun 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.
Also available in: Chinese   Japanese   Portuguese  
30 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.
Also available in: Russian  
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.
Also available in: Chinese   Japanese   Portuguese  
15 May 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.
Also available in: Chinese   Russian   Japanese   Portuguese  
10 Apr 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.
Also available in: Chinese   Russian   Japanese   Portuguese   Spanish  
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.
Also available in: Chinese   Japanese   Portuguese  
20 Feb 2012
Easy and beautiful documentation with Sphinx
Create maintainable, style-driven documents that can be automatically distributed in different formats using Sphinx. Discover how Sphinx abstracts the tedious parts and offers automatic functions to solve common problems like title indexing and special code highlighting.
Also available in: Chinese   Russian   Japanese   Portuguese   Spanish  
29 Nov 2011
Virtualization for embedded systems
Today's technical news is filled with stories of server and desktop virtualization, but there's another virtualization technology that's growing rapidly: embedded virtualization. The embedded domain has several useful applications for virtualization, including mobile handsets, security kernels, and concurrent embedded operating systems. This article explores the area of embedded virtualization and explains why it's coming to an embedded system near you.
Also available in: Japanese   Portuguese  
19 Apr 2011
Manage resources on overcommitted KVM hosts
A key benefit of virtualization is the ability to consolidate multiple workloads onto a single computer system. This consolidation yields savings in power consumption, capital expense, and administration costs. The degree of savings depends on the ability to overcommit hardware resources such as memory, CPU cycles, I/O, and network bandwidth. Technologies such as memory ballooning and Kernel Same-page Merging (KSM) can improve memory overcommitment with proper manual tuning. Autonomic reconfiguration of these controls in response to host and VM conditions can result in even greater savings. In this article, learn how to apply these techniques to increase your savings.
Also available in: Russian   Japanese   Portuguese  
08 Feb 2011
Learn Linux, 101: Manage disk quotas
Learn to set and check disk quotas on your Linux filesystems to prevent individual users from using more space than allowed and to prevent whole filesystems from filling up unexpectedly. 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 quotas.
Also available in: Russian   Japanese  
30 Nov 2010
Virtual networking in Linux
With the explosive growth of platform virtualization, it's not surprising that other parts of the enterprise ecosystem are being virtualized, as well. One of the more recent areas is virtual networking. Early implementations of platform virtualization created virtual NICs, but today, larger portions of the network are being virtualized, such as switches that support communication among VMs on a server or distributed among servers. Explore the ideas behind virtual networking, with a focus on NIC and switch virtualization.
Also available in: Russian   Japanese   Portuguese  
27 Oct 2010
Resizing Linux partitions, Part 2: Advanced resizing
Linux systems are often installed on multiple partitions, each of which has a fixed size. As your needs change, though, it is often necessary to resize partitions to suit your changing needs. Several tools exist to do this in Linux, but there are a number of potential pitfalls and restrictions that can make the task more difficult than it might at first seem. This article covers advanced partition resizing issues, including using Logical Volume Management (LVM) features, troubleshooting, and alternatives to partition resizing. Part 1 of this series covered basic partition resizing.
Also available in: Japanese   Portuguese   Spanish  
01 Sep 2010
Resizing Linux partitions, Part 1: Basics
Linux systems are often installed on multiple partitions, each of which has a fixed size. As your needs change, though, it is often necessary to resize partitions to suit your changing needs. Several tools exist to do this in Linux, but there are a number of potential pitfalls and restrictions that can make the task more difficult than it might seem at first. This article guides you through the task of resizing Linux partitions, beginning with basic preparations and moving on to common resizing scenarios using graphical user interface (GUI) tools.
Also available in: Japanese   Portuguese  
11 Aug 2010
Ceph: A Linux petabyte-scale distributed file system
Linux continues to invade the scalable computing space and, in particular, the scalable storage space. A recent addition to Linux's impressive selection of file systems is Ceph, a distributed file system that incorporates replication and fault tolerance while maintaining POSIX compatibility. Explore the architecture of Ceph and learn how it provides fault tolerance and simplifies the management of massive amounts of data.
Also available in: Japanese   Portuguese  
04 Jun 2010
Anatomy of Linux Kernel Shared Memory
Linux as a hypervisor includes a number of innovations, and one of the more interesting changes in the 2.6.32 kernel is Kernel Shared Memory (KSM). KSM allows the hypervisor to increase the number of concurrent virtual machines by consolidating identical memory pages. Explore the ideas behind KSM (such as storage de-duplication), its implementation, and how you manage it.
Also available in: Japanese   Portuguese  
07 Apr 2010
Scripting the Vim editor, Part 5: Event-driven scripting and automation
Why repeat yourself? You can configure Vim’s comprehensive event model to execute time-saving scripts whenever particular editing events -- such as loading a file or switching between editor modes -- occur. This article, the fifth in a series, describes how events work in Vim, explores a selection of useful event types, and then gets you started with attaching specific scripts to particular events. The end result is a more automated workflow configured precisely to your needs.
Also available in: Japanese  
03 Mar 2010
Scripting the Vim editor, Part 4: Dictionaries
A dictionary is a container data structure that offers different optimizations and trade-offs from a list. In particular, in a dictionary the order of the elements stored is irrelevant and the identity of each element is explicit. In this fourth article in a series introducing Vimscript, Damian Conway introduces you to dictionaries, including an overview of their basic syntax and many functions. He concludes with several examples that illustrate the use of dictionaries for more efficient data processing and cleaner code.
Also available in: Japanese  
10 Feb 2010
Using QEMU for cross-platform development
One of Linux's strengths is its cross-platform nature: you can run it on x86, x86-64, SPARC, PowerPC, and many other central processing units (CPUs). This wealth of hardware choices poses a challenge for software developers, though. Ensuring that software compiles, and runs correctly, on all platforms can be difficult. The use of the QEMU package can help ease this burden. QEMU is a machine emulator that supports a wide range of CPUs, so you can run PowerPC software on an x86 computer, x86-64 software on an SPARC computer, or what have you. This facility is particularly useful for programmers who need to test software's endianness compatibility or check other CPU-specific features. QEMU also enables you to run different operating systems entirely, so that you can test a program's ability to compile and run under FreeBSD, Solaris, or even Microsoft Windows without shutting down Linux.
Also available in: Japanese  
09 Feb 2010
Scripting the Vim editor, Part 3: Built-in lists
Vimscript provides excellent support for operating on collections of data, a cornerstone of programming. In this third article in the series, learn how to use Vimscript's built-in lists to ease everyday operations such as reformatting lists, filtering sequences of filenames, and sorting sets of line numbers. You'll also walk through examples that demonstrate the power of lists to extend and enhance two common uses of Vim: creating a user-defined function to align assignment operators, and improving the built-in text completions mechanism.
Also available in: Japanese  
27 Jan 2010
Anatomy of the libvirt virtualization library
The libvirt library is a Linux API over the virtualization capabilities of Linux that supports a variety of hypervisors, including Xen and KVM, as well as QEMU and some virtualization products for other operating systems. This article explores libvirt, its use, and its architecture.
Also available in: Japanese   Portuguese   Spanish  
05 Jan 2010
Git for Subversion users, Part 1: Getting started
Distributed version control systems (DVCSs) offer a number of advantages over centralized VCSs, and for Subversion users looking to explore this model, Git is a great place to start. Using Subversion as a baseline, this first of two articles shows how to install Git, set up a remote repository, and begin using basic Git commands.
Also available in: Russian   Japanese   Portuguese  
04 Aug 2009
Install the GNU ARM toolchain under Linux
Many tools are available for programming various versions of ARM cores, but one particularly popular set is the GNU ARM toolchain. Learn more about embedded development using the ARM core, as well as how to install the GNU tools and begin using them.
Also available in: Russian   Japanese  
20 May 2009
Thanks for the memory, Linux
Running out of Java heap isn't the only cause of a java.lang.OutOfMemoryError. If native memory runs out, OutOfMemoryErrors that your normal debugging techniques won't be able to solve can occur. This article explains what native memory is, how the Java runtime uses it, what running out of it looks like, and how to debug a native OutOfMemoryError on Windows and Linux. A companion article covers the same topics for AIX systems.
Also available in: Chinese   Russian  
21 Apr 2009
Agile planning in real life
Are you part of a team that wants to get on the agile planning bandwagon? Are you using iterative development and still stuck doing "waterations"? In this article, the author puts his experience assisting and teaching IBM product teams into a roadmap that answers the question: "How do I start developing releases with agile planning?" He covers the basics of agile planning and shares his insights into what works and what doesn't. Editor's note: Figures 1 and 4 were updated and other corrections were added at the author's request.
Also available in: Russian   Japanese   Spanish  
15 Apr 2009
Charming Python: Distributing computing with RPyC
RPyC is a seamless library for integrating Python processes on many machines/processes. This article looks at the advantages or drawbacks RPyC has over other distributed Python frameworks such as XML-RPC and Pyro. A few simple examples of using RPyC are included to give you a feel for the library.
Also available in: Russian   Japanese   Portuguese  
31 Mar 2009
Tour the Linux generic SCSI driver
Computers control and transfer data to SCSI devices via SCSI commands. In this article, the author introduces some of the SCSI commands and methods of executing SCSI commands when using SCSI API in Linux. He provides background on the SCSI client/server model and the storage SCSI command. Next, he explains the Linux generic SCSI driver API and offers an example of using a system that focuses on executing the inquiry command using the generic driver.
Also available in: Russian   Japanese  
25 Feb 2009
Develop a GPS-aware application for the Nokia N810, Part 3: Finish the job
This series of articles shows how to build a global positioning system (GPS)-aware application using the Linux-based Nokia N810 Internet Tablet and its built-in GPS receiver. In this last of three installments, you'll put the final touches to the GPS trip tracker and get it ready for release.
18 Feb 2009
Anatomy of ext4
The fourth extended file system, or ext4, is the next generation of journaling file systems, retaining backward compatibility with the previous file system, ext3. Although ext4 is not currently the standard, it will be the next default file system for most Linux distributions. Get to know ext4, and discover why it will be your new favorite file system.
Also available in: Chinese   Russian   Japanese   Portuguese  
17 Feb 2009
Cloud computing with Linux
Cloud computing and storage convert physical resources (like processors and storage) into scalable and shareable resources over the Internet (computing and storage "as a service"). Although not a new concept, virtualization makes this much more scalable and efficient through the sharing of physical systems through server virtualization. Cloud computing gives users access to massive computing and storage resources without their having to know where those resources are or how they're configured. As you might expect, Linux plays a huge role. Discover cloud computing, and learn why there's a penguin behind that silver lining. [And see the new Resource links to the latest developerWorks content on cloud computing. -Ed]
Also available in: Japanese   Portuguese  
11 Feb 2009
Embed Lua for scriptable apps
The Lua programming language is a small scripting language specifically designed to be embedded in other programs. Lua's C API allows exceptionally clean and simple code both to call Lua from C, and to call C from Lua. This allows developers who want a convenient runtime scripting language to easily implement the basic API elements needed by the scripting language, then use Lua code from their applications. This article introduces the Lua language as a possible tool for simplifying common development tasks, and discusses some of the reasons to embed a scripting language in the first place.
Also available in: Russian   Japanese  
27 Jan 2009
Comparison of SLES (SUSE) and RHEL (Red Hat) on IBM System p
Most system administrators planning to install Linux on IBM System p eventually run into an important question: Which Linux distribution should I install? This article compares two distributions from Red Hat and Novell, and weighs the pros and cons of each. We'll discuss Linux on POWER (LoP), the history of both distributions, the relationship IBM has with them, and the factors that should go into your decision-making process. We're also going to compare and contrast what it takes to create logical volumes on SuSE Linux Enterprise Server (SLES) and Red Hat Enterprise Linux (RHEL).
Also available in: Chinese   Russian  
18 Nov 2008
GCC hacks in the Linux kernel
The Linux kernel uses several special capabilities of the GNU Compiler Collection (GCC) suite. These capabilities range from giving you shortcuts and simplifications to providing the compiler with hints for optimization. Discover some of these special GCC features and learn how to use them in the Linux kernel.
Also available in: Russian   Japanese  
18 Nov 2008
Anatomy of Linux journaling file systems
In recent history, journaling file systems were viewed as an oddity and thought of primarily in terms of research. But today, a journaling file system (ext3) is the default in Linux. Discover the ideas behind journaling file systems, and learn how they provide better integrity in the face of a power failure or system crash. Learn about the various journaling file systems in use today, and peek into the next generation of journaling file systems.
Also available in: Russian   Japanese  
04 Jun 2008
Role-based access control in SELinux
Role-based access control (RBAC) is a general security model that simplifies administration by assigning roles to users and then assigning permissions to those roles. RBAC in Security-Enhanced Linux (SELinux) acts as a layer of abstraction between the user and the underlying type-enforcement (TE) model, which provides highly granular access control but is not geared for ease of management. Learn how the three pieces of an SELinux context (policy, kernel, and userspace) work together to enforce the RBAC and tie Linux users into the TE policy.
Also available in: Russian   Japanese  
13 Feb 2008
Anatomy of Linux synchronization methods
In your Linux education, you may have learned about concurrency, critical sections, and locking, but how do you use these concepts within the kernel? This article reviews the locking mechanisms available within the 2.6 kernel, including atomic operators, spinlocks, reader/writer locks, and kernel semaphores. It also explores where each mechanism is most applicable for building safe and efficient kernel code.
Also available in: Russian   Japanese  
31 Oct 2007
Use gperf for efficient C/C++ command line processing
The GNU tool gperf is a "perfect" hash function that, for a given set of user-provided strings, generates C/C++ code for a hash table, a hash function, and a lookup function. Learn how to use gperf for effective command-line processing in your C/C++ code.
Also available in: Russian   Japanese  
25 Jul 2007
Linux and symmetric multiprocessing
As evidenced by major central processing unit (CPU) vendors, multi-core processors are poised to dominate the desktop and embedded space. With multiprocessing comes greater performance but also new problems. This article explores the ideas behind multiprocessing and developing applications for Linux that exploit SMP.
Also available in: Chinese   Russian   Japanese  
14 Mar 2007
Assembly language for Power Architecture, Part 3: Programming with the PowerPC branch processor
The last two articles discussed the outline of how programs on the POWER5 processor work using the 64-bit PowerPC instruction set, how the PowerPC instruction set addresses memory, and how to do position-independent code. This article focuses on the very powerful condition and branch instructions available in the PowerPC instruction set.
Also available in: Chinese   Russian   Japanese  
17 Jan 2007
Assembly language for Power Architecture, Part 1: Programming concepts and beginning PowerPC instructions
The POWER5 processor is a 64-bit workhorse used in a variety of settings. Starting with this introduction to assembly language concepts and the PowerPC instruction set, this series of articles introduces assembly language in general and specifically assembly language programming for the POWER5.
Also available in: Chinese   Russian  
03 Oct 2006
BusyBox simplifies embedded Linux systems
BusyBox is a single executable implementation of many standard Linux utilities. BusyBox contains simple utilities, such as cat and echo, as well as larger, more complex tools, such as grep, find, mount, and telnet (albeit, with fewer options than the traditional version); some refer to BusyBox as the Swiss Army knife of utilities. This article explores the purpose of BusyBox, how it works, and why it's important for memory-constrained environments.
Also available in: Japanese  
15 Aug 2006
Better error handling using Flex and Bison
Although it is easy to generate programs using Flex and Bison, it is a bit harder to make those programs produce user-friendly syntax and semantic error messages. This article examines the error-handling features of Flex and Bison, shows how to use them, and details some pitfalls.
Also available in: Russian  
28 Jul 2006
Inside the Linux scheduler
The Linux kernel continues to evolve, incorporating new technologies and gaining in reliability, scalability, and performance. One of the most important features of the 2.6 kernel is a scheduler implemented by Ingo Molnar. This scheduler is dynamic, supports load-balancing, and operates in constant time -- O(1). This article explores these attributes of the Linux 2.6 scheduler, and more.
Also available in: Russian   Japanese  
30 Jun 2006
Integrated Development Environment: C/C++ development with the Eclipse Platform
Learn how to use the C/C++ Development Toolkit (CDT), the best integrated development environment C/C++ toolkit available for Eclipse. And get an overview of how to use the Eclipse Platform, an integrated development environment for C and C++ development projects.
Also available in: Japanese   Portuguese  
27 Jun 2006
Embeddable scripting with Lua
Compiled programming languages and scripting languages each have unique advantages, but what if you could use both to create rich applications? Lua is an embeddable scripting language that is small, fast, and very powerful. Before you create yet another configuration file or resource format (and yet another parser to accompany it), try Lua.
Also available in: Russian  
28 Apr 2006
Porting Linux applications to 64-bit systems
With the pervasiveness of 64-bit architectures, it's more important than ever that your Linux software be 64-bit ready. Learn how to avoid portability pitfalls when making declarations and assignments, bit shifting, typing, formatting strings, and more.
Also available in: Japanese  
12 Apr 2006
Install and configure General Parallel File System (GPFS) on xSeries
Walk through a simple General Parallel File System (GPFS) implementation. In the Linux(R) world today, you have a variety of file systems available, such as ext2, ext3, ReiserFS, JFS, and so on. Similarly, in the clustered environment, you need a file system that can scale well, give better throughput, and provide high fault tolerance. The IBM GPFS fits the bill. It has large block size support with wide striping, parallel access to files from multiple nodes, token management, and more.
21 Mar 2006
Access the Linux kernel using the /proc filesystem
The /proc filesystem is a virtual filesystem that permits a novel approachfor communication between the Linux kernel and user space. In the /proc filesystem, virtual files can be read from or written to as a means of communicating with entities in the kernel, but unlike regular files, the content of these virtual files is dynamically created. This article introduces you to the /proc virtual filesystem and demonstrates its use.
Also available in: Russian   Japanese  
14 Mar 2006
Better networking with SCTP
The Stream Control Transmission Protocol (SCTP) is a reliable transport protocol that provides stable, ordered delivery of data between two endpoints (much like TCP) and also preserves data message boundaries (like UDP). However, unlike TCP and UDP, SCTP offers such advantages as multi-homing and multi-streaming capabilities, both of which increase availability. In this article, get to know the key features of SCTP in the Linux 2.6 kernel and take a look at the server and client source code that shows the protocol's ability to deliver multi-streaming.
Also available in: Russian   Japanese  
28 Feb 2006
The art of metaprogramming, Part 1: Introduction to metaprogramming
One of the most under-used programming techniques is writing programs that generate programs or program parts. Learn why metaprogramming is necessary and look at some of the components of metaprogramming (textual macro languages, specialized code generators). See how to build a code generator and get a closer look at language-sensitive macro programming in Scheme.
Also available in: Russian   Japanese  
20 Oct 2005
Boot loader showdown: Getting to know LILO and GRUB
Most Linux users, from the casual desktop user to the Linux system administrator, have used a utility known as a boot loader. Different variations of this utility provide varying levels of support and functionality. In many cases, the default boot loader installed with a Linux distribution is not always the best for your needs; the same can be said for the default settings of each boot loader. In this article, Laurence Bonney discusses the pros and cons of two of the more popular boot loaders -- LILO and GRUB -- and suggests a number of configurations to get the most from your machine.
Also available in: Japanese  
24 Aug 2005
Use reentrant functions for safer signal handling
If you deal with concurrent access of functions, either by threads or processes, you can face problems caused by non-reentrancy of the functions. In this article, learn through code samples how anomalies can result if reentrancy is not ensured, especially with regard to signals. Five recommended programming practices are included, along with a discussion of a proposed compiler model in which the compiler front end deals with reentrancy.
Also available in: Japanese  
20 Jan 2005
Updating from SuSE Linux Enterprise Server V8 to V9
If you are already running SLES 8, you may be able to run an update to SLES 9 rather than re-installing from scratch. This article examines the update process and gives you suggestions on how to make an update successful.
21 Sep 2004
Build code with lex and yacc, Part 1: Introduction
Lex and yacc are tools to automatically build C code suitable for parsing things in simple languages. These tools are most often used for parts of compilers or interpreters, or for reading configuration files. In the first of two articles, Peter Seebach explains what lex and yacc actually do and shows how to use them for simple tasks.
Also available in: Japanese  
11 Aug 2004
Differences Between IBM eServer iSeries and pSeries Servers Running Linux
Since the inception of running Linux on an IBM eServer iSeries server, it has changed the computing environment and traditional iSeries workloads. It has been said that Linux and OS/400 are among the two most stable operating environments available. But it has truly been the combination of Linux running on iSeries hardware and OS/400 itself that has created this exciting environment. Each component brings its strengths to the equation creating greater possibilities for solution developers and end-users alike.
09 Apr 2004
More graphics from the command line
There's nothing quite like command-line tools for handling large batches of tasks, and image manipulations are no exception. Web developers and administrators will appreciate the ability to handle large numbers of files easily, either at the command line or in scripts. Programmer Michael Still presents more examples of the ImageMagick suite, this time demonstrating how to put curved corners, logos, or frames and borders on your images, as well as how to convert to and from multipage file formats including Adobe's PDF format.
Also available in: Japanese  
16 Mar 2004
Graphics from the command line
There's nothing quite like command-line tools for handling large batches of tasks, and image manipulations are no exception. Web developers and administrators will appreciate the ability to handle large numbers of files easily, either at the command line or in scripts. Programmer Michael Still presents the ImageMagick suite, a Linux toolkit for sizing, rotating, converting, and otherwise manipulating images, in a huge number of formats, whether one or a hundred at a time.
Also available in: Japanese  
16 Jul 2003
Tip: Remove duplicate lines with uniq
Duplicate lines don't often cause a problem, but sometimes they really do. And when they do, there's little need to spend an afternoon working up a filter for them, when the uniq command is at your very fingertips. Find out how it can save you time and headaches.
Also available in: Japanese  
03 Apr 2003
Guide to Python introspection
Introspection reveals useful information about your program's objects. Python, a dynamic, object-oriented programming language, provides tremendous introspection support. This article showcases many of its capabilities, from the most basic forms of help to the more advanced forms of inquisition.
Also available in: Russian   Japanese  
01 Dec 2002
PowerPC assembly
Assembly language is not widely known among the programming community these days, and PowerPC assembly is even more exotic. Hollis Blanchard presents an overview of assembly language from a PowerPC perspective and contrasts examples for three architectures: ia32, ppc, and ppc64.
Also available in: Japanese  
01 Jul 2002
GNOMEnclature: Getting ready for GNOME 2, Part 2
In this second installment of the newly relaunched GNOMEnclature column, relative GNOME newbie and Common threads columnist Daniel Robbins takes a look at the new Glib object system from a new GNOME developer's perspective. By the end of this article, you'll know enough about GNOME to decide if you want to try it for yourself (even if you are a stalwart C fan).
01 Jun 2002
Get the latest innovations for the eServer iSeries
The iSeries servers are bigger, better, and less expensive than ever. One model even lets you support dynamic logical partitioning and manage Linux, OS/400, and Windows servers on one machine. Now you can do midrange server consolidation with the greatest reliability and at the lowest total cost of ownership.
01 Feb 2002
Introduction to Quantum Computing
This article, which builds on a basic knowledge of the mathematics of vectors, gives an introduction to quantum computing.
01 Sep 2001
Common threads: OpenSSH key management, Part 1
In this series, you'll learn how RSA and DSA authentication work, and see how to set up passwordless authentication the right way. In the first article of the series, Daniel Robbins focuses on introducing the RSA and DSA authentication protocols and showing you how to get them working over the network.
Also available in: Japanese  
01 Jul 2001
Inline assembly for x86 in Linux
Bharata B. Rao offers a guide to the overall use and structure of inline assembly for x86 on the Linux platform. He covers the basics of inline assembly and its various usages, gives some basic inline assembly coding guidelines, and explains the instances of inline assembly code in the Linux kernel.
Also available in: Japanese  
01 Mar 2001
Using Bash shell scripts for function testing
Function testing is a critical part of software development -- and Bash, which is already loaded in Linux and ready to go, can help you do it quickly and easily. In this article, Angel Rivera explains how to use Bash shell scripts to perform function testing of Linux applications that use line commands. The scripts rely on the return code of the line commands, so you will not be able to use this approach for GUI applications.
Also available in: Japanese  
01 Mar 2001
Setting up a Local Area Network
This article describes how to build a Local Area Network (LAN) consisting of two or more computers running the Red Hat Linux operating system. The article begins with the basics: an overview of the TCP/IP (Transmission Control Protocol/Internet protocol) suite, and an explanation of assigning IP addresses in a LAN. Then the article covers the LAN hardware and configuration using a tool called LinuxConf in the Red Hat Linux operating system environment. Lastly, the article walks you through the critical steps of testing and troubleshooting your LAN.
Also available in: Japanese  
01 Feb 2001
Linux software debugging with GDB
Most flavours of Linux come with the GNU debugger, or gdb to the shell. Gdb lets you see the internal structure of a program, print out variable values, set breakpoints and single step through source code. It makes an extremely powerful tool for fixing problems in program code. In this article I'll try to show how cool and useful gdb is.
01 Feb 2001
Cyrillic in Unicode
In this article, Thomas Burger describes the Cyrillic script fonts and the various methods for representating them in Linux, including UTF-8. He provides instructions for setting up the font support and installation, and describes how it is supported in applications. He also supports his claim that the use of UTF-8 Cyrillic script fonts will make Linux the first truly international operating system.
Also available in: Japanese  
01 Jan 2001
Common threads: Sed by example, Part 2
Sed is a very powerful and compact text stream editor. In this article, the second in the series, Daniel shows you how to use sed to perform string substitution; create larger sed scripts; and use sed's append, insert, and change line commands.
Also available in: Japanese  
01 Oct 2000
Charming Python: Text processing in Python
Along with several other popular scripting languages, Python is an excellent tool for scanning and manipulating textual data. This article summarizes Python's text processing facilities for the programmer new to Python. The article explains some general concepts of regular expressions and offers advice on when to use (or not use) regular expressions while processing text.
Also available in: Russian   Japanese  
01 Sep 2000
Tip: Prompt magic
Why stick with the standard boring shell prompt when you can easily make it colorful and more informative? In this tip, Daniel Robbins will show you how to get your shell prompt just the way you like it, as well as how to dynamically update your X terminal's title bar.
Also available in: Japanese   Portuguese  
01 Sep 2000
Charming Python: Curses programming
A certain class of Python applications works best with an interactive user interface without the overhead or complexity of a graphical environment. For interactive text-mode programs (under Linux/UNIX), for example, the ncurses library, wrapped in Python's standard curses module, is just what you need. In this article, David Mertz discusses the use of curses in Python. He illustrates the curses environment using sample source code from a front-end to the Txt2Html program.
Also available in: Japanese  
01 Sep 2000
Common threads: Sed by example, Part 1
In this series of articles, Daniel Robbins will show you how to use the very powerful (but often forgotten) UNIX stream editor, sed. Sed is an ideal tool for batch-editing files or for creating shell scripts to modify existing files in powerful ways.
Also available in: Japanese  
01 Sep 2000
Charming Python: Using state machines
State machines, in a theoretical sense, underlie almost everything related to computers and programming. And it also turns out that state machines, in a practical sense, can help solve many ordinary problems (especially for Python programmers). In this article, David Mertz discusses some practical examples of when and how to code a state machine in Python.
Also available in: Japanese  
01 Aug 2000
POSIX threads explained
POSIX (Portable Operating System Interface) threads are a great way to increase the responsiveness and performance of your code. In this series, Daniel Robbins shows you exactly how to use threads in your code. A lot of behind-the-scenes details are covered, so by the end of this series you'll really be ready to create your own multithreaded programs.
Also available in: Japanese  
01 Jul 2000
Bash by example, Part 3
Daniel Robbins takes a good look at the Gentoo Linux ebuild system, an excellent example of the power of bash.
01 May 2000
Bash by example, Part 1
By learning how to program in the bash scripting language, your day-to-day interaction with Linux will become more fun and productive, and you'll be able to build upon those standard UNIX constructs (like pipelines and redirection) that you already know and love. In this three-part series, Daniel Robbins will teach you how to program in bash by example. He'll cover the absolute basics (making this an excellent series for beginners) and bring in more advanced features as the series proceeds.
Also available in: Japanese  
01 Mar 2000
Home, smart home
An intruder is detected in the back yard by infrared sensors, setting off the automatic sprinklers -- or even dialling 911. Not that he'd have been able to get in anyway, as the house is protected by Java-based iButton keys.... In the 1960s, MI6 or U.N.C.L.E. might have paid millions for the things you can do today on your Linux box with MisterHouse -- without installing any new wiring.
01 Dec 1999
1 - 90 of 90 results
Show Summaries | Hide Summaries