Read Cad Guidebook: A Basic Manual for Understanding and Improving Computer-Aided Design Online
Authors: Stephen J. Schoonmaker
Tags: #Science & Math, #Biological Sciences, #Biotechnology, #Professional & Technical, #Medical eBooks, #Special Topics, #Professional Science
CAD programs often have an option to create neutral files that can be used
to translate drawings from one CAD system to another. Since they are used to
transfer between systems, they are an obvious good candidate for use of the
ASCII file structure. So, CAD file types such as DXF™, IGES, STEP, etc. are
ASCII files.
FIGURE
3.4
Bytes for an ASCII file as seen by the operating system (in hexadecimal).
60 Chapter 3
3.2.8.2 Binary Files
Some files managed by the operating system are not ASCII files, even though
they use the standard ASCII codes in them. These files are generally referred to
as binary files. The important characteristic is that they do not have the special
end of record ASCII codes. Instead, the bytes just are continuous data without
breaks. It some cases, these streams of bytes will be structured into a standard
length that is easily moved around by the operating system (say 4096 bytes or 4
Kilobytes). In other cases, the operating system is just expected to read the data
out of it arbitrarily. Indeed, a benefit of the binary files is that operating system
can more easily “jump around” in the file and take data in and out of it as needed.
Another benefit of the binary file structure is size. Since there are no “end of
record” bytes in the file, more “real” information can be stored in the file.
But the penalty for binary file structure is that it is not as universally trans-
ferable between different operating systems. The binary format is more depen-
dent on the particular operating system. In fact, different computer systems may
be referred to as binary compatible or not. This indicates whether the computer
systems could exchange files without concern of files being binary format or not.
The incompatibility generally arises from the fact that bytes are always made up
of 8 bits, but in looking at the pattern of 1s and 0s, one has to decide whether the
most significant digits are on the left or the right. Although it is universally ac-
cepted that digits to the left in a “normal” number are more significant, there are
some operating system advantages to considering them to be on the right. This
byte order issue is expressed by saying an operating system is “big-endian” or
“little-endian.” Particularly between different unix-based systems, there is no
standard for this issue. However, in considering various generations of PCs, this
is not a problem. All PC-DOS and Windows operating system computers can
share binary files without a problem.
Most of the data files used by a CAD system are actually in binary format
(so that they are accessed more quickly, use less disk space, etc.). This would
include file types such as DWG, PRT, and ASM. Also, image files such as TIFF,
GIFSM, and JPEG are binary files.
3.2.8.3 Compressed Files
The final issue for file structure is file compression. Compressed files are files
that have been reduced in size, without losing any of the data that is contained in
the file. This type of file is an advantage when transferring data between systems
or companies, and transferring CAD data files in this way is a very common
requirement.
Files are compressed when a special computer program (which may be a
standard feature of the operating system) analyzes the data in the file and figures
Computer Software Basics 61
out areas of the file that use space inefficiently. For instance, if there is a section
of a file that contains the ASCII code for the number 0 repeated 50 times, then
the file compression may replace this 50 bytes of codes with just a few bytes of
codes (a few bytes indicating that it was a number 0 being repeated and a few
bytes to indicate that it was repeated 50 times). Once a file is compressed, it usu-
ally has a different file extension. On a Microsoft Windows system, the com-
pressed file would likely have a file extension of ZIP; on a unix-based system it
would likely have a file extension of Z. For ASCII files (such as DXF files for
CAD programs), the compression process can typically reduce a file size by 80
percent or more (so a 1 megabyte file could become a 125 kilobyte compressed
file); this can dramatically reduce the amount of time it takes to transfer drawings
between computer systems or companies. For binary files (such as a DWG file),
the reduction is much less dramatic. These kinds of files may only be reduced by
25–50 percent.
Note that once a file has been compressed, the result is a binary file. So,
after compressing a DXF file (which is an ASCII file that can be easily copied),
the compressed file is no longer an ASCII file (which can not be copied as uni-
versally). Once a file has been compressed, it is typically transmitted between
systems via e-mail or ftp. Obviously, once the file has been transmitted, the file
must be decompressed. This is done by reversing the process used to compress
the file. If it was compressed on a Windows system, then the receiving computer
system should also be running Windows. Some of the file compression programs
have versions on both Windows and unix-based systems, so in some cases, there
could be different operating systems on the different computer systems.
3.2.9 Unix
One of the most popular operating systems for CAD software is generically re-
ferred to as unix. It was originally developed in the 1970s for minicomputers. It
was written in such a way that it was easy to convert it to run on different com-
puter hardware. Therefore, it became a standard offering on systems from a vari-
ety of computer manufacturers such as the former Digital Equipment Corporation
or DEC®, Hewlett-Packard (HP), International Business Machines (IBM), Sili-
con Graphics®
(SGI
®), and Sun Microsystems. Since a variety of companies
have owned the rights to the name unix over the years, each manufacturer created
its own name for it. On DEC systems it was called Ultrix, on Hewlett-Packard it
is called HP-UX®, on IBM it is called AIX, on SGI it is called IRIX®, and on Sun
Microsystems it is called Solaris®. Another unix-like operating system is called
Linux®. This version is known as “open source” and can basically be considered
a public domain version; it is not owned by any specific computer manufacturer,
but the manufacturers may offer computers with Linux instead of their own unix.
62 Chapter 3
There are unique aspects of unix on each of these systems, but in general a user
that has run CAD software on one of these platforms would not have any diffi-
culty working on another.
As mentioned previously, one unique feature of unix is that everything is a
file. The entire system is organized into
a single “grand” directory structure. All
of the devices, access to the network, all of the software, etc. are all treated as
files. The top of the directory tree structure is the root directory, and the special
user on the system that has total access to all files is therefore called root or the
root user. If one has root access, then one has complete access to the computer.
Refer to Figure 3.2.
A file that represents a device that could be found on the computer is in a
subdirectory of the root directory called “dev.” So a disk drive (or a partition of
it) could be called /dev/hdisk0. Any operation to read or write data to this special
file will be sending or receiving data from the disk drive (keeping in mind there
really is no data file called /dev/hdisk0). In another example, accessing a drawing
file on a CD-ROM may be accomplished by copying files from a directory called
/dev/cd0.
Another unique feature of unix is the ability to link files from one directory
to another. For instance, each user accessing a unix file server (where all CAD
drawings are kept) may be given a standard home directory such as /us-
ers/team1/fred. When this user fred starts the CAD software, the software may
look for a standard file in his home directory that sets defaults for the CAD soft-
ware (such as the text height of notes in drawings). However, most companies
prefer to have all users use the same defaults. In this case, a unix administrator
can have each user have what looks like a real copy of this defaults file in their
home directory, but instead this “dummy” file is really linked to a master copy of
the file on the file server. Other operating systems tend to only permit this sort of
mapping or linking on a directory-by-directory or drive-by-drive basis, not file-
by-file.
Another unique feature of unix is the ability to have a variety of security
options to protect files. Files can be protected (say against accidental deletion)
based on individual files, individual users, groups of files, groups of users, or on
all files and all users. These combinations can be applied anywhere in the overall
directory structure, so there is great flexibility in setting the security characteris-
tics. Also, it is possible to have users temporarily be promoted to higher levels of
privilege based on parameters within a specific application (such as a CAD data
manager program). This promotion process is based on a unix feature called “se-
tuid.” If the CAD software includes a sophisticated data manager, then directo-
ries can be created that contain all of a company’s important or “released”
drawings and models, and access to delete these files may be controlled only by
administrators within the CAD software (even though users can create and/or
modify files in this directory with their temporary read/write privilege). If users
Computer Software Basics 63
circumvent the CAD system and use operating system commands instead, again
they will be prevented from deleting the released files (even though with the
CAD system they can create or modify files in this directory).
3.2.10 Microsoft Windows
Another operating system that is commonly used for CAD systems is Microsoft
Windows. This program dates from the 1980s; it was written for the Intel-based
personal computers. Originally it was just a Graphical User Interface (refer to the
section below on GUI) that ran on top of the Microsoft MS-DOS®
operating sys-
tem. With the version called Windows 95, Microsoft Windows became the real
operating system that controlled the PC (instead of MS-DOS).
One drawback with older versions of Microsoft Windows was that it had to
run programs that were rather old and were written for 16-bit systems (see the
chapter on computer hardware for information on 16/32-bit architecture). Unix
had been only working with 32-bit systems by this time, so unix generally
worked better with the larger CAD software (since the larger CAD software ran
on the 32-bit systems).
A unique characteristic of Microsoft Windows is that it is entirely a graphi-
cal system. Basically all of the administrative tasks can be accomplished without
the use of text-based commands. On unix-based systems, many functions are still
performed with text-based commands (although many administrators prefer this
approach anyway). As discussed in the section below on GUI, unix-based sys-
tems therefore require a separate program to be running on the workstation to
handle the graphical user interface (but again, this can be an advantage in some
circumstances).
Another unique characteristic of Microsoft Windows is that it is not tied to
any specific computer manufacturer (as most of the versions of unix are). This
means that a much wider range of choices for computer hardware is available. In
some cases, however, this is a disadvantage since programs are not necessarily
guaranteed to work with all of the thousands of choices of hardware. Particularly
with larger CAD software systems, there will be only a limited list of devices
(graphics adapters, monitors, input devices, etc.) that will be supported by the
CAD software vendor. If a company does not use the listed devices, then the
CAD software vendor may not be required to fix problems that may occur with
the software.
3.3 THE GUI
As shown in Figure 3.1, the next layer of software on a computer system “above”
the operating system is the Graphical User Interface (GUI). This is shown as a
separate layer of software, but in some cases it is not necessarily a separate pro-