2003 will be marked by the emergence of three new enterprise desktop offerings. Corporations seem interested, especially with Microsoft boosting prices. So, once again, we ask: Is this the year of the Linux desktop?
If you're connected to the Internet, keeping your network secure should be a top priority. Patching servers shows that you're mindful of the risks, but testing your network for vulnerabilities is the only way to gain real confidence that you're safe from crackers. Use our hands-on guide to analyze just how safe or assailable you actually are.
All across the Internet, the Border Gateway Protocol, or BGP, is used to direct network traffic from one site to another. Here's a look at how BGP works.
As this issue of Linux Magazine goes to print, the biggest story in the Linux world is SCO's "not less than" $1 billion law suit against IBM. News of the suit spread quickly over Web, blogs, and wire. InfoWorld ran the headline, "SCO Sues IBM Over Linux," while c|net wrote, "SCO Sues Big Blue over Unix, Linux."
With all of the fancy, graphical email applications available for Linux, newcomers are often surprised to learn that many long-time Linux users still use old, text-based email management tools. These old-timers thoroughly embrace the ancient Unix philosophy of using several small, discrete command-line tools rather than a single monolithic application. This month, we look at grepmail, one of the most indispensable command-line email utilities.
Electronic mail is both a blessing and a curse. On the one hand, email is so convenient: You can send email at any time from almost any computer, and email is great for staying connected to colleagues, friends, and family members, especially if you're separated by time zones or great distances. Moreover, email costs nothing and is easily shared with groups of any size. On the other hand, email can be overwhelming. Today, it's not unusual to receive hundreds of email messages a day. Sure, reading and replying to all of that correspondence has to be done, but filtering and filing all of that email (not to mention fighting spam) can be downright daunting and time-consuming.
This month, we'll take our third and final look at transferring files between systems. The utilities we'll check out this month, rsync and unison, analyze two sets of files and synchronize them, making the two sets identical with little or no help from you. Given a source and a destination, rsync makes all destination files match those at the source. unison works in both directions, automatically making any changes that don't conflict and asking you about the rest.
One of the keys to any type of security is knowledge. To keep a network secure, you must know about security in general, but you must also be aware of the environment in which your computers operate.
In the previous two columns, we discussed the master/slave programming idiom and how to pass derived data types in messages. This month, we continue our exploration of advanced uses of the Message Passing Interface (MPI) with a look at MPI communicators and groups, two MPI features that provide communications contexts and modularity for parallel codes.
Dynamic memory allocation seems straightforward enough: you allocate memory on demand -- using malloc() or one of its variants -- and free memory when it's no longer needed. Indeed, memory management would be that easy -- if only we programmers never made mistakes. Alas, we do make mistakes (from time to time) and memory management problems do occur.
Last month, we looked at some of the issues that affect PHP performance and explored PHP caches and optimizers, two kinds of add-ons that can provide a substantial performance boost to your PHP web applications. Rather than dig into any of those products (they all have sufficient documentation and good support communities), let's focus on a related issue: performance testing. Or, said another way, once you've installed a performance boosting add-on or made a configuration change, how can you determine if it's helping or hurting?
When Java was introduced in 1994, it became an overnight success largely because of Netscape Navigator: Navigator put the Java interpreter on millions of computers. Wanting to capitalize on the new, suddenly pervasive Java platform, thousands of developers learned the Java language as quickly as possible, anxious to write applets for a hungry audience enthralled with the Internet.
A Perl program alters the outside world in some manner. Otherwise, there'd be no point in running the program. But sometimes, our Perl programs need a little "memory" to do their job, something that persists information from one invocation to the next. But how do you keep such values around?
Synchronizing the time on all machines on the same network is incredibly useful and very simple. The Network Time Protocol daemon (ntpd) does all of the dirty work for you. If you have DNS configured and are connected to the Internet, you can synchronize with an external NTP master server or you can set up your own local master server and synchronize all of your machines to it. In the latter case, you'll only need to monitor the master system for reasonably accurate time.