UCSC CMPS 105 - 01 - Unix Standardization and Implementations

Unformatted text preview:

Chapter 2: Unix Standardization and ImplementationsIn The Old Days…MulticsUnix is BornGoals of UnixDifferent Versions of UnixBrief History of WindowsWhy StandardsDifferent InterfacesLimitsSome LimitsPrimitive System Data TypesChapter 2: Unix Standardization and ImplementationsCMPS 105: Systems ProgrammingProf. Scott BrandtT Th 2-3:45Soc Sci 2, Rm. 167In The Old Days… Before Unix, every hardware vendor had their own operating system These systems were completely proprietary They were not open You had to buy tools from the hardware vendor Code was not portable from one platform to anotherMultics A joint OS venture between MIT, AT&T Bell Labs, and GE to develop a new OS Every good OS idea, up to a point, appeared in Multics Virtual memory File system Security Etc. As a result, Multics was huge and cumbersome It eventually failed, although everyone liked the ideaUnix is Born Several researchers at AT&T Bell Labs still liked the idea of a new OS In 1969, they began by designing a new file system Keep in mind that these were relatively new Then they added an assembler, a shell, process management, and some basic I/O Unix was bornGoals of Unix Unix was intended to be: small, flexible, portable, efficient, a programmer’s tool It was really written by a group of hardcore programmers for themselves and people like them C was developed to facilitate UNIX development Another innovation: pipes and lots of small utilities Side note: the shortened names for everything were an accidentDifferent Versions of Unix AT&T licensed the Unix source code to Berkeley Researchers at Berkeley started working with it and made lots of changes: BSD Unix But others couldn’t use it without an AT&T license Eventually, Berkeley people rewrote the AT&T proprietary parts so that they could distribute theirs Later: SunOS/Solaris, DEC Ultrix, HPUX, Xenix Even later: Linux was born First really, truly open-source UnixBrief History of Windows In the early 80s, IBM decided to produce a “personal computer” 1 MHz processor, 5 MB HD, 128K RAM? They contacted a small software company led by Bill Gates to ask them if they would produce a version of their DOS system for the new “PC” First version of DOS wasn’t much of an OS DOS stands for “Disk Operating System” Windows idea was stolen from Xerox PARCWhy Standards Problem: as soon as everyone gets their hands on something (C, UNIX, etc.) they start changing it to suit their needs Issues: Portability, modularity, reusability, interoperability, etc. Standards efforts driven by the government, and by corporations ANSI C, IEEE POSIXDifferent Interfaces Many different flavors of UNIX support different system call interfaces POSIX specifies one set of interfaces and semantics Many extensions existLimits Portability requires that data types be the same on different architectures Even if the hardware is different This requires careful standardization of the data types How they are stored and interpreted, how many bits, formats, endian-ness, max, min, sign, …Some Limits Size of char, short, int, long Signed/unsigned Min/max values Pathnames Open filesPrimitive System Data Typescaddr_t clock_t comp_tdev_t fd_set fpos_tgid_t ino_t mode_tnlink_t off_t pid_tptrdiff_t rlim_t sig_atomic_tsigset_t size_t ssize_ttime_t uid_t


View Full Document

UCSC CMPS 105 - 01 - Unix Standardization and Implementations

Download Unix Standardization and Implementations
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Unix Standardization and Implementations and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Unix Standardization and Implementations 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?