TweetFollow Us on Twitter

Mar 95 Viewpoint
Volume Number:11
Issue Number:3
Column Tag:The Editor’s Viewpoint

The Editor’s Viewpoint

By Scott T Boyd, Editor

I recently came across the following e-mail closing:

“(Anxiously awaiting a protected memory MacOS)”

We all know what he was getting at, don’t we? If only we had memory protection, life would be oh-so-much better. As often as we hear this, read this, and utter this, it must be true.

Memory protection - it’s got to be good. Make sure that stray writes won’t damage anything else, and the machine will stand solid as a rock, impervious to the vagaries of programmer error and lack of foresight. Let’s go march in front of Apple’s R&D center with placards, bullhorns, and riot police, and demand our memory protection now!

pan•a•ce•a n. a supposed remedy, cure, or medicine for all diseases or ills; cure-all [Webster’s New World Dictionary, 2nd College Edition]

Memory protection sounds so good, but it’s a panacea, a holy grail. Now, that’s not to say that it’s necessarily a bad thing; far from it. Nevertheless, it’s not the solution. If it were, unix systems wouldn’t crash, and wouldn’t get corrupted, but they do.

What is the solution? I’ll get to that, but for now consider this - fixation on a panacea can distract us to the point of missing real solutions.

The writer of the e-mail I mentioned above listed a serious of difficulties he experienced recently while trying to install and use a complex environment. He also offered his workarounds. Let’s take a look at the problems.

Crashes. Workaround - reinstall MacOS from scratch (clean install). Reason - system corruption from repeated crashes.

Corrupted files and file system. Workaround - run Norton Utilities, Disk First Aid, and so forth. A bad file system often gets worse, so fix problems early and avoid more damage.

Faulty system extensions. Workaround - remove suspect extensions. These can cause trouble whether they’re intact or corrupted.

Unknown crashes. Workaround - power down the machine for a few minutes. Reason - don’t know, but it seems to work sometimes when simple rebooting doesn’t.

Incorrect parameter RAM settings. Workaround - zap PRAM. Reason - bad settings can result in improperly configured hardware and software.

While this list isn’t complete, let’s see what we can quickly figure out about what’s happening here.

Problem: corrupted system file. Possible causes include:

• power or system failure during a write to the system file, due to “natural causes” or “human nature” (see below).

• power or system failure before the file system cache is flushed to disk, or while a file is open

• faulty hardware (SCSI termination, SCSI drive, cables, etc.)

• bad software changing the system file unintentionally or incorrectly.

Problem: file system corruption. Possible causes include all of the above, as well as improper use of file system calls (e.g. it would be bad to write directly to any of a number of system-owned files).

Problem: incompatibilities introduced by extensions. Possible causes are too numerous to mention. It’s hard to write system software, and that’s what extensions are - system software. Extendibility makes the Macintosh interesting, and it comes with a price.

Problem: Only a shutdown, power off, then restart solves problem. Typically caused by equipment problems (overheating, for example). Might also be that something needs to be reset but doesn’t except during a cold start.

Problem: configuration settings improperly set. Probable cause? Someone or something writing to PRAM unintentionally or incorrectly.

Back to the suggestion that protected memory will fix lots of problems - will it?

Will it protect the file system from corruption in the event of power failure? system failure? Wouldn’t that really require a robust file system? Perhaps a transaction-based system, complete with commit/rollback (like most databases do)?

Power failure comes in many forms. “Human nature” runs deep, and I’ve seen power failure result from inadvertent use of what looks very much like a floppy eject button on the front of certain models of Macintosh (e.g. my PowerMac 6100). My 18-month-old daughter, who seriously enjoys inserting floppies into floppy slots, one day put one into my 6100.

When I explained that it can only hold one, and you have to take it out before you can put another in, she decided that she’d better get that first one out of there. Without hesitation, she reached right up to push the floppy eject button. The next 60 ticks flowed by as slowly as a glacier’s movement as I (calmly?) said, “NO!” and rushed to avert disaster.

If only I’d had protected memory, right? A system design along the lines of a PowerBook (such as a soft power switch and battery backup) might prove more efficacious. (Of course, moving the switch elsewhere might work, too!)

Will memory protection defend against poorly-written system software? Having written some Apple system software myself, I can assure you that it’s entirely possible that Apple might accidentally ship some system software that has a bug in it. Not that I ever shipped any bugs (not on purpose, at any rate), but I did ship a few bug fixes, some for buggy Apple code, some for buggy 3rd-party code. Any errors in the system software may bring it to its knees, no matter what kind of protection is in place. Ever see a unix kernel crash? I have. Ever see the Power Macintosh memory-protected nanokernel crash? I have (three times yesterday, and twice today, unfortunately). Computers are complicated beasts, and it’s extremely tough to cover all the possibilities, memory protection notwithstanding.

Will memory protection protect against someone writing to the system file directly? Nope. How about protecting against someone adding or changing resources in the system file? Again, nope. Is it possible to protect the system file? Sure. One example is the Macintosh Classic, which can boot from ROM (just try to change that system file!). By the same token, anything that is protected by a software mechanism, yet offers an API for writing, opens up the possibility that someone may use it incorrectly. This same reasoning covers what happens with PRAM. It’s generally pretty difficult to write to PRAM without using the API. Yet we still see situations where the PRAM (or the CUDA, which handles serial on the AVs) gets incorrectly configured. Bugs in Apple’s code? Bugs in 3rd party code? Sure. Will protection help? Not really.

What’s the solution? Modernization, certainly. Memory protection is a good thing (holy grails are nice to have), but it’s going to be a while yet. And keep in mind what it’s supposed to protect against - flawed software that goes astray. And who writes it? We all do! It’s time that we learn what mistakes we’re making, and then teach each other about them, and then devise methods to avoid them.

Finally, Apple could help out with overhauled and/or new APIs which help us avoid common pitfalls. Such APIs could help by making errors harder to make (reducing the error modes), and by offering services so we can stop writing some of the same old code for the umpteenth time. And how about offering only the calls we need, and not a few thousand calls of everything you could ever think of?

On a Slightly Different Topic

So you want to start a company and you’re sweating it out at your “real” job while developing your killer idea? Maybe you’ve taken the big step and gone out on your own to bring the killer idea to market. Maybe, just maybe, it looks almost like a product. Now what do you do? Why, marketing, of course! And how better to start than by building a “presence”? Not every upstart could pull it off, but the odd assortment of Collaboration Technologies, Mark/Space Softworks, MacUp, Mac the Knife, and even Apple filled Bondage A Go Go with wide-eyed MacWorld show-goers to mingle and gawk at people in black/leather/fetish attire. As with many marketing efforts, it’s hard to know whether Mac Black ’95 achieved the desired effect, but no doubt remains about whether the attendees will remember it!

Food For Thought

Have Net, will travel! - Brad Kollmyer

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Apple Keynote 7.3 - Apple's present...
Easily create gorgeous presentations with the all-new Keynote, featuring powerful yet easy-to-use tools and dazzling effects that will make you a very hard act to follow. The Theme Chooser lets you... Read more
Apple Numbers 4.3 - Apple's spreads...
With Apple Numbers, sophisticated spreadsheets are just the start. The whole sheet is your canvas. Just add dramatic interactive charts, tables, and images that paint a revealing picture of your data... Read more
Apple Pages 6.3 - Apple's word proc...
Apple Pages is a powerful word processor that gives you everything you need to create documents that look beautiful. And read beautifully. It lets you work seamlessly between Mac and iOS devices, and... Read more
Smultron 9.4.2 - Easy-to-use, powerful t...
Smultron 9 is an elegant and powerful text editor that is easy to use. Use it to create or edit any text document. Everything from a web page, a note or a script to any single piece of text or code.... Read more
Xcode 9.0 - Integrated development envir...
Xcode includes everything developers need to create great applications for Mac, iPhone, iPad, and Apple Watch. Xcode provides developers a unified workflow for user interface design, coding, testing... Read more
iShowU Instant 1.2.0 - Full-featured scr...
iShowU Instant gives you real-time screen recording like you've never seen before! It is the fastest, most feature-filled real-time screen capture tool from shinywhitebox yet. All of the features you... Read more
Apple Safari 11.0 - Apple's Web bro...
Note: The direct download link is currently unavailable. It is available in the OS X 10.12.6 release, as well as in the Apple Security Updates. Apple Safari is Apple's web browser that comes with... Read more
Typinator 7.3 - Speedy and reliable text...
Typinator turbo-charges your typing productivity. Type a little. Typinator does the rest. We've all faced projects that require repetitive typing tasks. With Typinator, you can store commonly used... Read more
ExpanDrive 6.0.16 - Access cloud storage...
ExpanDrive builds cloud storage in every application, acts just like a USB drive plugged into your Mac. With ExpanDrive, you can securely access any remote file server directly from the Finder or... Read more
coconutBattery 3.6.4 - Displays info abo...
With coconutBattery you're always aware of your current battery health. It shows you live information about your battery such as how often it was charged and how is the current maximum capacity in... Read more

The best games to play while you wait fo...
SteamWorld Dig 2 is out this week on PC and Switch, and people are understandably excited. This clever series by Image and Form combines our favorite metroidvania mechanics with an esquisite universe, excellent storytelling, and true wit. While... | Read more »
Drag'n'Boom beginner's gu...
Have you ever wanted to burn and pillage a village as a bloodthirsty dragon? If you answered yes to that question, Drag'n'Boom offers you the perfect chance to do so, casting you as an adorable little dragon that wants to set humankind aflame. It... | Read more »
Thimbleweed Park (Games)
Thimbleweed Park 1.0.0 Device: iOS Universal Category: Games Price: $9.99, Version: 1.0.0 (iTunes) Description: A brand new adventure game from Ron Gilbert and Gary Winnick, creators of the classics Monkey Island and Maniac Mansion!... | Read more »
The best simulation games on mobile
There's nothing like a good sim -- from the seemingly ridiculous to the incredibly mundane, you can be there's a simulation game out there for your every whim. [Read more] | Read more »
INKS guide - how to create works of pinb...
INKS puts a clever new spin on everyone's favorite classic arcade game, pinball. The core mechanics are the same -- keep a little ball pinging around the board for as long as possible without letting it fall into the precarious holes in the board.... | Read more »
Warbands: Bushido (Games)
Warbands: Bushido 1.0 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0 (iTunes) Description: Warbands:Bushido is a miniatures board game with cards, miniatures, dice and beautiful terrains to fight on, with both... | Read more »
The best mobile games like Divinity: Ori...
Divinity: Original Sin 2 launched this week to the excitement of RPG fans everywhere. The game, which derives a lot of of its story and mechanics from old-school isometric RPGs and Dungeons & Dragons, has unseated PlayerUnknown's... | Read more »
Iron Marines guide - beginner tips and t...
Iron Marines is a brilliant RTS title that feels a bit like Starcraft. It's got a sci-fi setting and some of the most spectacular strategy mechanics we've seen in mobile games to date. With that said, the RTS genre can be a bit tricky to break... | Read more »
The best new games we played this week -...
The work week can be tough, but on the bright side, it's almost overandthere are bunches of brand new games to try out this weekend. This week definitely makes up for last week's sleepiness ten-fold. We've got one of the finest RTS game on mobile... | Read more »
Through the Ages (Games)
Through the Ages 1.0.60 Device: iOS Universal Category: Games Price: $9.99, Version: 1.0.60 (iTunes) Description: The offical adaptation of Vlaada Chvátil’s strategy classic, the second best board game ever by Board Game Geek website... | Read more »

Price Scanner via MacPrices.net

Apple Refurbished 3TB Time Capsule for $279,...
Apple has Certified Refurbished 3TB Time Capsules available for $279 including free shipping plus Apple’s standard one-year warranty. Their price is $120 off MSRP. Read more
19% off Smart Battery Cases for iPhone 7
Amazon has both Black and White Smart Battery Cases for iPhone 7s available for $80.41 including free shipping. Their price is $18.59, or 19%, off MSRP. Read more
Back on sale: 10.5-inch 64GB iPad Pros for $5...
MacMall has 10.5″ 64GB Apple iPad Pros on sale again for $599 including free shipping. That’s $50 off MSRP and the lowest price available for this model from any reseller. Read more
Verizon offers Certified Preowned 16GB iPhone...
Verizon has the 16GB iPhone 6, Certified Preowned, available for $259.99 or $10.83 per month for 24 months. Service plan required. According to Verizon, “All CPO devices have been reconditioned to... Read more
Preorder new iPhone 8 at US Cellular, and tak...
Preorder the new iPhone 8 or iPhone 8 Plus at US Cellular, and take $50 off the prepaid price: – 64GB iPhone 8: $649.99 – 128GB iPhone 8: $799.99 – 64GB iPhone 8 Plus: $749.99 – 128GB iPhone 8 Plus... Read more
12-inch and 9-inch Apple iPad Pros, Certified...
Apple has Certified Refurbished 2016 12″ WiFi iPad Pros available starting at $589. An Apple one-year warranty is included with each model, and shipping is free: – 32GB 12″ iPad Pro WiFi: $589... Read more
QuickerTek Announces Solar PV Chargers for US...
Wichita, Kansas based QuickerTek has announced its new 30 Watt and 60 Watt USB Type-C Solar Juicz Chargers. These solar panels are the only products of their kind, featuring the USB 3.1 adapter cable... Read more
Apple refurbished 128GB iPhone 6s and 6s Plus...
Apple has Certified Refurbished 128GB iPhone 6s and 6s Plus’ available for up to $100 off the price of new models. Space Gray, Silver, Gold, and Rose Gold models are available. Each phone comes... Read more
13-inch 2.3GHz Silver MacBook Pros on sale fo...
B&H Photo has 2017 13″ 2.3GHz Silver MacBook Pros in stock today and on sale for $100 off MSRP, each including free shipping plus NY & NJ sales tax only: – 13-inch 2.3GHz/128GB Silver... Read more
12-inch 64GB iPad Pros available for $749, $5...
MacMall has 12″ 64GB iPad Pros on sale for $749 including free shipping. Their price is $50 off MSRP. Read more

Jobs Board

Development Operations and Site Reliability E...
Development Operations and Site Reliability Engineer, Apple Payment Gateway Job Number: 57572631 Santa Clara Valley, California, United States Posted: Jul. 27, 2017 Read more
*Apple* Solutions Consultant - Apple Inc. (U...
…about helping others on a team while also delighting customers? As an Apple Solutions Consultant (ASC), you will discover customers needs and help connect them Read more
Software/Data Engineer, *Apple* Media Produ...
Job Summary Apple Media Products is the team behind the App Store, Apple Music, iTunes, and many other high profile products on iPhone, Mac and AppleTV. Our Data Read more
SW Engineer , *Apple* Media - Apple Inc. (U...
Job Summary Our team is responsible for exposing Apple Media content and services to the world, and building the infrastructure for next generation internal and Read more
*Apple* Data Center Site Selection and Strat...
Job Summary As Apple 's products and services scale the globe, the Data Center Affairs team works behind the scenes to secure infrastructure for Apple 's data Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.