Letters to the Editor
I am a subscriber to LJ and, in fact, have every issue. I hesitate to say this, because it sounds like so much bullshit, but I have always been impressed by how quickly LJ came up to speed with quality articles. As a Unix applications programmer, I read several periodicals, and I find your nuts-and-bolts approach refreshing, compared to DDJ's articles. However, I am writing (if that is what this form of communication is properly called) to ask for an improvement in LJ. Would your editorial staff please give serious consideration to including articles on FreeBSD? Especially since it poses no threat to the sales of Linux. Furthermore, I think it would increase your sales, at least with some of the programmers that I know.
An informal survey made back in LJ's early days suggested the FreeBSD community wasn't interested in a magazine devoted to FreeBSD, which SSC was contemplating. (Perhaps things have changed?)
As far as giving time to FreeBSD within the pages of Linux Journal, we do have some ideas we're working on. Right now, though, we've got more material about Linux than we can print.
The July '96 issue of LJ presents the new Korn shell (ksh93). What is not mentioned (and is not widely known) is users not interested in commercial support can get Linux, Sun, etc. binaries for free (src is not available). This includes not only the ksh binary but also shared libraries and the Tksh extension for Tcl/Tk. Just check the URL www.research.att.com/orgs/ssr/book/reuse. By the way, the book that URL refers to (Practical Reusable Unix Software, Krishnamurthy, Wiley 1995), is a gold mine, describing and providing the source code for gems such as the dot tool. Dot is a directed graph layout tool, and now I can't live without it. Recommended.
—Alexandre Valente Sousa firstname.lastname@example.org
Mike Loukides and Andy Oram point out in their “Getting to Know gdb” article (September '96) that gdb is capable of setting hardware watchpoints on “only a few workstations”. Not only does the i386 (and beyond) have these capabilities, but current versions of Linux (1.2.1+) and gdb (4.14+) are able to use this feature.
The 386 supports up to four simultaneous hardware watchpoints which can trigger when a memory location is “accessed” (read or written). In Linux gdb, these are the “rwatch” and “awatch” commands. Both commands take an expression to be watched. As the authors point out, this feature is great for watching a memory location that is being mysteriously trashed. The advantage with hardware watchpoints is your program runs at full speed instead of being slowly single-stepped.
The one tricky point in dealing with these watchpoints is they are disabled automatically if program control transfers outside the scope of the expression. For example, if “i” is an automatic variable (a “local” variable), then when a subroutine is called, the meaning of “i” is lost. The workaround is to watch a raw memory location:
(gdb) print &i $1 = (int *) 0xbffffd2c (gdb) awatch *((int *) 0xbffffd2c) Hardware access(read/write) / watchpoint 3: *(int *) 3221224748 (gdb) cont Continuing. Hardware access(read/write) / watchpoint 3: *(int *) 3221224748 123 *foo = 0; (gdb)
—Andy Vaught email@example.com
I couldn't believe it—not one, not two, but three (!) issues of Linux Journal in my mail box Wednesday.
I don't know how to thank you for the happy hours I have wiled away in the past two days. I spent several hours just reading ads.
Not since the old days of Byte magazine can I remember enjoying a magazine's ads so much.
—Dwight Johnson firstname.lastname@example.org
- Easy Watermarking with ImageMagick
- The Only Mac I Use
- New Products
- Promise Theory—What Is It?
- Integrating Trac, Jenkins and Cobbler—Customizing Linux Operating Systems for Organizational Needs
- Tech Tip: Really Simple HTTP Server with Python
- RSS Feeds
- Returning Values from Bash Functions
- Learn GNU/Linux the Fun Way
Editorial Advisory Panel
Thank you to our 2014 Editorial Advisors!
- Jeff Parent
- Brad Baillio
- Nick Baronian
- Steve Case
- Chadalavada Kalyana
- Caleb Cullen
- Keir Davis
- Michael Eager
- Nick Faltys
- Dennis Frey
- Philip Jacob
- Jay Kruizenga
- Steve Marquez
- Dave McAllister
- Craig Oda
- Mike Roberts
- Chris Stark
- Patrick Swartz
- David Lynch
- Alicia Gibb
- Thomas Quinlan
- Carson McDonald
- Kristen Shoemaker
- Charnell Luchich
- James Walker
- Victor Gregorio
- Hari Boukis
- Brian Conner
- David Lane