%! %%Pages: (atend) %%DocumentFonts: (atend) %%EndComments % % Frame Maker PostScript Prolog 1.11, for use with Maker 1.11 % Copyright (c) 1986,87 by Frame Technology, Inc. All rights reserved. % % Known Problems: % Due to bugs in Transcript, the 'PS-Adobe-' is omitted from line 1 /FMversion (1.11) def /FrameDict 120 dict def % The readline in 23.0 doesn't recognize cr's as nl's on AppleTalk FrameDict /tmprangecheck errordict /rangecheck get put errordict /rangecheck {FrameDict /bug true put} put FrameDict /bug false put mark % Some PS machines read past the CR, so keep the following 3 lines together! currentfile 5 string readline 00 0000000000 cleartomark errordict /rangecheck FrameDict /tmprangecheck get put FrameDict /bug get { /readline { /gstring exch def /gfile exch def /gindex 0 def { gfile read pop dup 10 eq {exit} if dup 13 eq {exit} if gstring exch gindex exch put /gindex gindex 1 add def } loop pop gstring 0 gindex getinterval true } def } if /FMVERSION { FMversion ne { /Times-Roman findfont 18 scalefont setfont 100 100 moveto (Maker version does not match postscript_prolog!) dup = show showpage } if } def /FMLOCAL { FrameDict begin 0 def end } def /landscape FMLOCAL /docheight FMLOCAL /docwidth FMLOCAL /yscale FMLOCAL /xscale FMLOCAL /orgxfer FMLOCAL /orgproc FMLOCAL /organgle FMLOCAL /orgfreq FMLOCAL /FMDOCUMENT { /#copies exch def FrameDict begin 0 ne /landscape exch def /docheight exch def /docwidth exch def /yscale exch def /xscale exch def currenttransfer cvlit /orgxfer exch def currentscreen cvlit /orgproc exch def /organgle exch def /orgfreq exch def end } def /pagesave FMLOCAL /orgmatrix FMLOCAL /FMBEGINPAGE { FrameDict begin /pagesave save def 2 setlinecap xscale yscale scale landscape { 90 rotate 0 docheight neg translate } if /orgmatrix matrix def gsave } def /FMENDPAGE { grestore pagesave restore end showpage } def /fontname FMLOCAL /fontscale FMLOCAL /fontnum FMLOCAL /fontdict FMLOCAL /FMDEFINEFONT { FrameDict begin /fontname exch def /fontscale exch def /fontnum exch def /fontdict fontname findfont fontscale scalefont def fontdict /Encoding get StandardEncoding eq { fontdict DiacriticEncode /fontdict exch def } { fontdict NonDiacriticEncode /fontdict exch def } ifelse FMfonts fontnum fontnum fontdict definefont put end } def /FMLINEWIDTHS { FrameDict begin dup array /FMlinewidths exch def 1 sub -1 0 {exch FMlinewidths 3 1 roll lnormalize put} for end } def FrameDict begin /savematrix { orgmatrix currentmatrix pop } bind def /restorematrix { orgmatrix setmatrix } bind def /dmatrix matrix def /dpi 72 0 dmatrix defaultmatrix dtransform dup mul exch dup mul add sqrt def /max {2 copy lt {exch} if pop} bind def /min {2 copy gt {exch} if pop} bind def /DiacriticEncoding [ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one /two /three /four /five /six /seven /eight /nine /colon /semicolon /less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar /braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def /FMfonts 255 array def /basefontdict FMLOCAL /newfontdict FMLOCAL /DiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {dup /Encoding eq {exch pop DiacriticEncoding} {exch} ifelse newfontdict 3 1 roll put } {pop pop} ifelse } forall newfontdict } bind def /NonDiacriticEncode { /basefontdict exch def /newfontdict basefontdict maxlength dict def basefontdict {exch dup /FID ne {exch newfontdict 3 1 roll put} {pop pop} ifelse } forall newfontdict } bind def /freq FMLOCAL /bwidth FMLOCAL /bpside FMLOCAL /bstring FMLOCAL /onbits FMLOCAL /offbits FMLOCAL /xindex FMLOCAL /yindex FMLOCAL /x FMLOCAL /y FMLOCAL /setpattern { /freq exch def /bwidth exch def /bpside exch def /bstring exch def /onbits 0 def /offbits 0 def freq 0 {/y exch def /x exch def /xindex x 1 add 2 div bpside mul cvi def /yindex y 1 add 2 div bpside mul cvi def bstring yindex bwidth mul xindex 8 idiv add get 1 7 xindex 8 mod sub bitshift and 0 ne {/onbits onbits 1 add def 1} {/offbits offbits 1 add def 0} ifelse } setscreen {} settransfer offbits offbits onbits add div setgray } bind def /grayness { setgray orgxfer cvx settransfer orgfreq organgle orgproc cvx setscreen } bind def /normalize { transform cvi exch cvi exch itransform } bind def /dnormalize { dtransform cvi exch cvi exch idtransform } bind def /lnormalize { 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def /fillprocs [{0.00 grayness} {0.10 grayness} {0.30 grayness} {0.50 grayness} {0.70 grayness} {0.90 grayness} {0.97 grayness} {1.00 grayness} {<0F1E3C78F0E1C387> 8 1 dpi 16 div setpattern} {<0F87C3E1F0783C1E> 8 1 dpi 16 div setpattern} { 8 1 dpi 16 div setpattern} { 8 1 dpi 16 div setpattern} {<8142241818244281> 8 1 dpi 16 div setpattern} {<03060C183060C081> 8 1 dpi 16 div setpattern} {<8040201008040201> 8 1 dpi 16 div setpattern} {} {1.00 grayness} {0.90 grayness} {0.70 grayness} {0.50 grayness} {0.30 grayness} {0.10 grayness} {0.03 grayness} {0.00 grayness} { 8 1 dpi 16 div setpattern} { 8 1 dpi 16 div setpattern} {<3333333333333333> 8 1 dpi 16 div setpattern} {<0000FFFF0000FFFF> 8 1 dpi 16 div setpattern} {<7EBDDBE7E7DBBD7E> 8 1 dpi 16 div setpattern} { 8 1 dpi 16 div setpattern} {<7FBFDFEFF7FBFDFE> 8 1 dpi 16 div setpattern} {} ] def /H { FMlinewidths exch get setlinewidth } bind def /X { fillprocs exch get exec } bind def /V { gsave eofill grestore } bind def /N { gsave stroke grestore } bind def /M {moveto} bind def /E {lineto} bind def /D {curveto} bind def /O {closepath} bind def /n FMLOCAL /L { /n exch def newpath normalize moveto 2 1 n {pop normalize lineto} for } bind def /Y { L closepath } bind def /K { /n exch def newpath moveto 3 1 n {pop curveto} for } bind def /J { /n exch def newpath moveto 1 1 n {pop curveto} for } bind def /x1 FMLOCAL /x2 FMLOCAL /y1 FMLOCAL /y2 FMLOCAL /R { /y2 exch def /x2 exch def /y1 exch def /x1 exch def x1 y1 x2 y1 x2 y2 x1 y2 4 Y } bind def /C { grestore gsave R clip } bind def /U { grestore gsave } bind def /F { FMfonts exch get setfont } bind def /T { moveto show } bind def /P { moveto 0 32 3 2 roll widthshow } bind def /S { moveto 0 exch ashow } bind def /B { moveto 0 32 4 2 roll 0 exch awidthshow } bind def /Q { moveto gsave show grestore } bind def /x FMLOCAL /y FMLOCAL /dx FMLOCAL /dy FMLOCAL /dl FMLOCAL /t FMLOCAL /t2 FMLOCAL /Cos FMLOCAL /Sin FMLOCAL /r FMLOCAL /W { dnormalize /dy exch def /dx exch def normalize /y exch def /x exch def /dl dx dx mul dy dy mul add sqrt def dl 0.0 gt { /t currentlinewidth def savematrix /Cos dx dl div def /Sin dy dl div def /r [Cos Sin Sin neg Cos 0.0 0.0] def /t2 t 2.5 mul 3.5 max def newpath x y translate r concat 0.0 0.0 moveto dl t 2.7 mul sub 0.0 rlineto stroke restorematrix x dx add y dy add translate r concat t 0.67 mul setlinewidth t 1.61 mul neg 0.0 translate 0.0 0.0 moveto t2 1.7 mul neg t2 2.0 div moveto 0.0 0.0 lineto t2 1.7 mul neg t2 2.0 div neg lineto stroke t setlinewidth restorematrix } if } bind def /G { gsave newpath normalize translate 0.0 0.0 moveto dnormalize scale 0.0 0.0 1.0 5 3 roll arc closepath eofill grestore } bind def /x FMLOCAL /y FMLOCAL /w FMLOCAL /h FMLOCAL /xx FMLOCAL /yy FMLOCAL /ww FMLOCAL /hh FMLOCAL /A { /y exch def /x exch def /h exch def /w exch def x y normalize /yy exch def /xx exch def w h dnormalize /hh exch def /ww exch def ww abs hh abs xx ww add yy hh sub gsave savematrix newpath translate scale 0.0 0.0 1.0 5 3 roll arc 0 setlinecap restorematrix stroke grestore } bind def /FMsaveobject FMLOCAL /FMoptop FMLOCAL /FMdicttop FMLOCAL /BEGINPRINTCODE { /FMdicttop countdictstack 1 add def /FMoptop count 6 sub def /FMsaveobject save def userdict begin /showpage {} def newpath translate 0.0 0.0 moveto } bind def /ENDPRINTCODE { count -1 FMoptop {pop pop} for countdictstack -1 FMdicttop {pop end} for FMsaveobject restore } bind def /gn { 0 { 46 mul cf read pop 32 sub dup 46 lt {exit} if 46 sub add } loop add } bind def /str FMLOCAL /cfs { /str sl string def 0 1 sl 1 sub {str exch val put} for str def } bind def /ic [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223 0 {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx} {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx} {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12} {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh} {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh} {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl} {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl} {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl} {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl} ] def /sl FMLOCAL /val FMLOCAL /ws FMLOCAL /im FMLOCAL /bs FMLOCAL /cs FMLOCAL /len FMLOCAL /pos FMLOCAL /ms { /sl exch def /val 255 def /ws cfs /im cfs /val 0 def /bs cfs /cs cfs } bind def 400 ms /ip { is 0 cf cs readline pop { ic exch get exec add } forall pop } bind def /wh { /len exch def /pos exch def ws 0 len getinterval im pos len getinterval copy pop pos len } bind def /bl { /len exch def /pos exch def bs 0 len getinterval im pos len getinterval copy pop pos len } bind def /s1 1 string def /fl { /len exch def /pos exch def /val cf s1 readhexstring pop 0 get def pos 1 pos len add 1 sub {im exch val put} for pos len } bind def /hx { 3 copy getinterval cf exch readhexstring pop pop } bind def /h FMLOCAL /w FMLOCAL /lb FMLOCAL /bitmapsave FMLOCAL /is FMLOCAL /cf FMLOCAL /BEGINBITMAP { gsave translate scale /h exch def /w exch def /lb w 7 add 8 idiv def sl lb lt {lb ms} if /bitmapsave save def /is im 0 lb getinterval def ws 0 lb getinterval is copy pop /cf currentfile def w h 1 [w 0 0 h neg 0 h] {ip} image bitmapsave restore grestore } bind def /ENDBITMAP { } bind def end %%EndProlog %%BeginSetup (1.11) FMVERSION 1. 1. 612. 792. 0 1 FMDOCUMENT 0 12. /Times-Roman FMDEFINEFONT 1 18. /Times-Bold FMDEFINEFONT 2 14. /Times-Bold FMDEFINEFONT 3 12. /Times-Italic FMDEFINEFONT 4 14. /Times-BoldItalic FMDEFINEFONT 5 12. /Times-Bold FMDEFINEFONT 6 9. /Times-Roman FMDEFINEFONT 7 14. /Times-Roman FMDEFINEFONT 8 12. /Courier FMDEFINEFONT 0.5 1. 3. 4. 4 FMLINEWIDTHS %%EndSetup %%Page: "1" 1 FMBEGINPAGE 0 F 0 X (Sun Microsystems Porting Guide) 72. 36. T (8-1) 524. 36. T 1 F (Chapter 8) 72. 706. T (Migration between SunOS Releases) 216. 706. T 0 F (This chapter briefly describes the differences between SunOS ) 217. 686. T (releases and notes release improvements that can affect appli-) 217. 673. T (cations software. ) 217. 660. T 2 F (8.1) 72. 635. T (SunOS Release Overview) 216. 635. T 0 F (In order to keep OEMs and customers informed of upcoming ) 217. 616. T (system software releases, Sun has instituted a new software ) 217. 603. T (release cycle. The objectives of this plan are to establish a ) 217. 590. T (mechanism for accurate schedules and timely SunOS releases. ) 217. 577. T (The three components of the new release plan are major releas-) 217. 564. T (es, minor releases, and micro releases.) 217. 551. T (A major release is a SunOS version that could require an appli-) 217. 534. T (cation porting effort because of new features, architectural ) 217. 521. T (changes, or other significant improvements. The contents of a ) 217. 508. T (major release and the availability of unbundled software will dic-) 217. 495. T (tate the schedule. ) 217. 482. T (A minor release\325s primary purpose is to support new software ) 217. 465. T (and hardware products. In most cases, a minor release will not ) 217. 452. T (require an application porting effort. Minor releases will general-) 217. 439. T (ly be available on a 6- to 9- month schedule. ) 217. 426. T (A micro release, also known as a dot-dot or bug fix release, ) 217. 409. T (consolidates individual bug fixes and applies only to the rele-) 217. 396. T (vant product\050s\051. No new hardware or software functions are ) 217. 383. T (included in a micro release.) 217. 370. T (SunOS has been evolving over the last few years, and its pow-) 217. 353. T (erful innovations will become incorporated into a new unified ) 217. 340. T (UNIX discussed later in this chapter. An aspect of SunOS ) 217. 327. T (enables multiple clusters of networks communicating over a net-) 217. 314. T (work while also supporting different releases of SunOS. \050A few ) 217. 301. T (rules apply to diskless clients and their servers.\051 All machines ) 217. 288. T (can access other filesystems on different parts of the network ) 217. 275. T (through NFS. ) 217. 262. T 2 F (8.2) 72. 237. T (SunOS 4.0) 216. 237. T 0 F (SunOS 4.0 began shipping in May 1988. It contains many ) 217. 218. T (improved features and is a sound architectural foundation for ) 217. 205. T (future releases. See Figure 8-1 for SunOS 4.0 features. ) 217. 192. T (For more details, please refer to the ) 217. 175. T 3 F (SunOS 4.0 Change Notes) 390.29 175. T 0 F ( ) 511.62 175. T (\050part of the SunOS 4.0 release documentation\051, ) 217. 162. T 3 F ( SunOS 4.0 ) 445.96 162. T (Release Report) 217. 149. T 0 F (, and System V and SunOS 4.0 documents.) 289.98 149. T 72. 576. 180. 612. R 7 X V 3 F 0 X (Software) 72. 603. T (release cycles) 72. 589. T 72. 180. 180. 216. R 7 X V 0 X (Features of ) 72. 207. T (SunOS 4.0) 72. 193. T FMENDPAGE %%Page: "2" 2 FMBEGINPAGE 0 F 0 X (Sun Microsystems Porting Guide) 380.33 36. T (8-2) 72. 36. T 72. 72. 540. 720. C 72. 365. 525. 720. C 72. 365. 525. 720. R 7 X V 90. 450. 216. 152.5 297. 561.5 G 1 H 0 X 90. 90.1 -216. 152.5 513. 714. A 90. 180.1 216. 152.5 81. 714. A 180. 270.1 216. -152.5 81. 409. A 270. 0.1 -216. -152.5 513. 409. A 0. 90. -216. 152.5 513. 714. A 4 F -0.24 (SunOS 4.0) 263. 697. P 5 F (Architectural) 153. 663. T (Features) 152. 651. T 8.36 (Network Services) 153. 606. P 3.34 (System V Facilities) 153. 517. P 6.34 (SunView Features) 308. 669. P 1.33 (Peripheral Support) 308. 607. P 7.02 (Security Measures) 308. 562. P 5.69 (Other Features) 309. 520. P 6.66 (4.3BSD Facilities) 244. 455. P 6 F 1.76 (State-of-the-art VM System) 152. 641. P 1.01 (Shared library facility) 152. 633. P 2.76 (Lightweight process library) 152. 625. P 1.13 (NFS support for swapping and) 152. 596. P 2. (paging diskless clients) 152. 587. P 1.63 (Re-sizable swap area for diskless) 152. 578. P (clients) 152. 569. T 1.26 (File system reorganization for) 152. 560. P 0.38 (efficient support of multiple ) 152. 551. P (Auto-mounting of remote files) 152. 535. T -0.24 (Full base level SVID Release 3 interface) 152. 506. P 0.92 (STREAMS interface to kernel) 152. 497. P 1.5 (STREAMS-based System V TTY driver) 152. 488. P 0.13 (Archive utility and job scheduler) 152. 479. P (Industry-standard function names) 308. 659. T 0.25 (Keyboard control of menu items) 308. 650. P 1.05 (Menus providing all basic editing functions) 308. 641. P -0.74 (Enhanced mailtool) 308. 632. P 1.51 (Enhanced text windows) 308. 623. P 0.88 (Reusable and editable configuration files) 308. 596. P 0.75 (On-ine disk formatting) 308. 587. P 2.01 (New mass-storage systems) 308. 578. P 2.75 (RPC authentication) 308. 553. P -0.24 (Secure NFS) 308. 544. P 1.25 (Audit trails) 308. 535. P 1.26 (Support for 8-bit characters) 308. 510. P 0.75 (C global and peephole optimizers) 308. 501. P 0.67 (Up to 64 open files per process) 308. 492. P -0.99 (Obsolescence mechanism) 308. 473. P 1.51 (Dedicated documentation sets) 308. 483. P 0.88 (64 open files per process) 243. 443. P 0.5 (Full subnets support) 243. 434. P -0.23 (Internet-standard name server) 243. 425. P (architectures) 152. 543. T 5 F 1.47 (Figure 8-1. SunOS 4.0 Features) 217. 380. P 7.69 (New Features) 256. 685. P 72. 72. 540. 720. C U 2 F 0 X (8.2.1) 72. 344. T (SunOS 4.X) 216. 344. T 0 F (A forthhcoming release of SunOS will incorporate the Base ) 217. 325. T (Level System V Interface Definition \050SVID\051 and pass the Sys-) 217. 312. T (tem V Verification Suite \050SVVS\051. SunOS 4.1 includes new fea-) 217. 299. T (tures such as improved ease of use and basic international sup-) 217. 286. T (port will also be provided. Additional SunOS 4.X features will ) 217. 273. T (be announced later.) 217. 260. T 2 F (8.3) 72. 235. T (The Sun and AT&T Joint UNIX Implementation) 216. 235. T 0 F (In October 1987, Sun and AT&T announced an alliance to) 217. 216. T (integrate SunOS and its Berkeley UNIX \0504.3/4.2BSD\051 ) 217. 203. T (features into a single, open UNIX System V standard. This ) 217. 190. T (will be released as UNIX System V Release 4.0. This ap-) 217. 177. T (proach uses industry standards to define and describe program-) 217. 164. T (ming interfaces, the result of which is inherently competitive ) 217. 151. T (and multivendor. The goal of this venture is to provide a stan-) 217. 138. T (dard, stable application development environ-ment and, to ) 217. 125. T (encourage application software creation. The ) 217. 112. T (overall result will be a consistent user interface across different ) 217. 99. T (applications, better functionality via defined OS interfaces, ) 217. 86. T FMENDPAGE %%Page: "3" 3 FMBEGINPAGE 0 F 0 X (Sun Microsystems Porting Guide) 72. 36. T (8-3) 524. 36. T (Sun and AT&T\325s efforts for unified UNIX are divided into three ) 217. 278. T (phases. For the first phase, Sun will deliver a SunOS version ) 217. 265. T (that will contain most of the features and functions of the unified ) 217. 252. T (UNIX system. It will comply to the Base Level SVID and will ) 217. 239. T (support software developers who want early exposure to the ) 217. 226. T (new System V UNIX. Phase 2 is the AT&T effort to supply the ) 217. 213. T (unified UNIX system to the world. The beta version \0503B2 ) 217. 200. T (source-based\051 will appear in 1989. Phase 3 is an effort to pro-) 217. 187. T (vide continued evolution of UNIX while maintaining the consis-) 217. 174. T (tent programming interfaces. The interfaces are the most impor-) 217. 161. T (tant in this phase, not the kernel implementation. ) 217. 148. T 2 F (8.4) 72. 123. T (Porting from SunOS 3.X to SunOS 4.0) 216. 123. T 0 F (SunOS 4.0 has several new features appealing to most OEMs, ) 217. 104. T (users, and system administrators. Numerous enhancements ) 217. 91. T (make the migration from 3.X to 4.0 different from previous ) 217. 78. T (and preserved investment in software and people.) 217. 711. T (Note that UNIX must run on any hardware architectures. This ) 217. 694. T (new, unified UNIX conforms to this requirement with a compre-) 217. 681. T (hensive programming interface for development tools, user ) 217. 668. T (interface \050OPEN LOOK\051, and networking. \050See Figure 8-2.\051 ) 217. 655. T (Also note that Xenix extensions will be present in this UNIX ) 217. 642. T (because of an agreement between AT&T and Microsoft.) 217. 629. T 72. 227. 180. 272. R 7 X V 3 F 0 X (Incorporation of ) 72. 263. T (SVID into SunOS 4.X) 72. 249. T 163. 406. 540. 564. R 3 X V 0 H N 163. 565. 540. 611. R 7 X V 0 X N 170. 413. 288. 557. R 7 X V 0 X N 296. 414. 410. 557. R 7 X V 0 X N 418. 413. 532. 557. R 7 X V 0 X N 296. 509. 410. 557. R 7 X V 0 X N 296. 464. 410. 509. R 7 X V 0 X N 2 F 3.73 (Provide consistent programming interfaces) 219. 585. P 7 F 2.07 (Development ) 190. 538. P 4.1 (User interface) 312. 540. P 0.97 (Vendor specific) 307. 490. P 2.39 (Window system) 307. 443. P (Networking) 442. 534. T 0 F (-TCP/IP) 446. 508. T (-NFS/RFS) 446. 481. T (-RPC/XDR) 446. 455. T (-X11/NeWS) 315. 424. T 7 F (toolkits) 331. 474. T 0 F 3.35 (-OPEN LOOK) 313. 519. P 3. (-ANSI C) 193. 495. P 2 F 1.92 (Figure 8-2. UNIX System V Release 4.0) 230. 304. P 163. 359. 540. 405. R 7 X V 0 X N 7 F 0.87 (Unified UNIX System V Release 4.0) 250. 387. P 0.93 (System V + Berkeley BSD + SunOS + Xenix Extensions) 188. 369. P (Tools) 209. 522. T 540. 570. 540. 405. 2 L N 163. 566. 163. 405. 2 L N 163. 328. 540. 359. R 7 X V 0 X N 283. 358. 283. 329. 2 L N 411. 358. 411. 329. 2 L N (SPARC) 453. 341. T 1.28 (Motorola 680X0) 301. 341. P 0.84 (Intel 80386) 190. 340. P FMENDPAGE %%Page: "4" 4 FMBEGINPAGE 0 F 0 X (Sun Microsystems Porting Guide) 380.33 36. T (8-4) 72. 36. T (SunOS installations or upgrades. Most SunOS 3.X binaries ) 217. 711. T (can run under SunOS 4.0. ) 217. 698. T (Do not use pre-SunOS 4.0 object files \050.o and .a files\051 with ) 217. 681. T (SunOS 4.0 without recompiling these files for SunOS 4.0. Com-) 217. 668. T (patibility issues arise with programs that depend on the filesys-) 217. 655. T (tem layout, kernel data structures \050/dev/kmem or /dev/mem\051, ) 217. 642. T (and certain system call semantics \050mmap\051. The full details are ) 217. 629. T (listed in the ) 217. 616. T 3 F (SunOS 4.0 Change Notes) 276. 616. T 0 F (, which is suggested read-) 397.34 616. T (ing for any porting effort of this type. ) 217. 603. T 2 F (8.5) 72. 578. T (Suggestions for Future Releases beyond SunOS 4.0) 216. 578. T 0 F (The SunOS 4.0 release provides many opportunities for applica-) 217. 559. T (tion developers to insulate themselves from the possible incom-) 217. 546. T (patibilities of future major releases. These product migration ) 217. 533. T (strategies can ease the transition to the unified UNIX:) 217. 520. T (\245) 221. 502. T (Install the System V compatibility package option and ) 234. 502. T (become familiar with its conventions.) 234. 489. T (\245) 221. 471. T (Set your $PATH variable to choose BSD behavior ) 234. 471. T (\050/usr/ucb\051 or System V behavior ) 234. 458. T (\050/usr/5bin\051. Further ) 391.64 458. T (details are in the System V and SunOS 4.0 document.) 234. 445. T (\245) 221. 427. T (Design your package to install in either environment ) 234. 427. T (\050BSD or System V\051.) 234. 414. T (\245) 221. 396. T (If you are writing new code, write to the System V Inter-) 234. 396. T (face Definition ) 234. 383. T (\050Issue 2, Volumes I, II, III\051 if possible.) 309.31 383. T (\245) 221. 365. T (Try to avoid writing your own custom kernel modules; ) 234. 365. T (write to the libraries or ) 234. 352. T (interfaces instead. SunOS 4.0 ) 346.98 352. T (gives you new tools to make this job easier.) 234. 339. T 2 F (8.6) 72. 311. T (Migrating from SunOS 3.X to SunOS System V ) 216. 311. T (Default Release) 216. 297. T 0 F (Moving from SunOS 3.X to the System V default release is an ) 217. 278. T (addition to a SunOS 4.0 to System V default release migration. ) 217. 265. T (The System V default environment means that the System V ) 217. 252. T (commands, libraries, and behavior is the default. Please see ) 217. 239. T (below. ) 217. 226. T 2 F (8.7) 72. 201. T (Migrating from SunOS 4.0 to SunOS System V ) 216. 201. T (Default Release ) 216. 187. T 0 F (As the System V and BSD environments converge, it becomes ) 217. 168. T (important for users to be aware of the default system environ-) 217. 155. T (ment. In SunOS 4.0, the BSD commands, libraries, and behav-) 217. 142. T (ior defaults to BSD operation. ) 217. 129. T (When Sun releases its OS including System V Release 4.0, the ) 217. 112. T (System V behavior will become the default environment. This ) 217. 99. T (does not mean the BSD environment will go away. It does ) 217. 86. T 72. 498. 180. 544. R 7 X V 3 F 0 X (Open UNIX System ) 72. 535. T (V standard: UNIX ) 72. 521. T (System V Release 4.0) 72. 507. T 72. 226. 180. 280. R 7 X V 0 X (Product migration ) 72. 271. T (strategies for transi-) 72. 257. T (tion to unified UNIX) 72. 243. T FMENDPAGE %%Page: "5" 5 FMBEGINPAGE 0 F 0 X (Sun Microsystems Porting Guide) 72. 36. T (8-5) 524. 36. T (mean that users preferring BSD will need to prepend /usr/ucb ) 217. 711. T (to the $PATH variable before /bin, /usr/bin, and /usr/5bin in ) 217. 698. T (SunOS 4.X. Because of this upcoming change, users need to be ) 217. 685. T (aware of programming practices that can complicate a transition ) 217. 672. T (to the next software release.) 217. 659. T (To avoid application incompatibilities, changing the $PATH vari-) 217. 642. T (able is the first step. In cases where the application depends ) 217. 629. T (on commands or options not in both SunOS and System V, you ) 217. 616. T (should try to remove the dependencies. Otherwise if you ) 217. 603. T (require the BSD or SunOS semantics, you may have to specify ) 217. 590. T (the BSD compatibility package for your application to work with ) 217. 577. T (the System V default release. The obvious areas of incompati-) 217. 564. T (bilities are commands currently present in both /usr/5bin and ) 217. 551. T (/usr/bin \050) 217. 538. T 3 F (ar, cat, cc, cflow, chmod, col, cxref, date, diff3, du, ) 260.67 538. T (echo, expr, grep, lint, ls, m4, nohup, od, pr, sed, sort, stty, sum, ) 217. 525. T (time, touch, and tr) 217. 512. T 0 F (\051. Consider the example with the echo com-) 305.33 512. T (mand: ) 217. 499. T (BSD) 123. 482. T 8 F (echo "hello world on line1";echo -n "hello world on line2") 123. 470. T 0 F (System V) 123. 450. T 8 F (echo "hello world on line1\134nhello world on line2\134c") 123. 437. T 2 F (8.8) 72. 412. T (Compilation, Makefile, and Build-Related Issues) 216. 412. T 0 F (To ensure that existing programs build independently of the ) 217. 393. T (environment preference of the invoking process, most develop-) 217. 380. T (ers 1zwant to explicitly specify a BSD environment by setting ) 217. 367. T (CC=/usr/ucb/cc and passing CC to makefiles. The /usr/5lib is a ) 217. 354. T (symbolic link to /usr/lib, with conflicting files moved to a new ) 217. 341. T (directory called /usr/ucbinclude. Similarly, /usr/5include is a ) 217. 328. T (symbolic link to /usr/include with all files there moved to ) 217. 315. T (/usr/include. Conflicting files are in the /usr/ucb/include directory.) 217. 302. T 2 F (8.8.1) 72. 277. T (Other Changes) 216. 277. T 0 F (The underlying system administration will change to be more ) 217. 258. T (compatible with System V. Count on the accounting record for-) 217. 245. T (mat changing along with uucp administration. To be safe, do not ) 217. 232. T (rely on the conventions of /single/init for initialization files asso-) 217. 219. T (ciated with starting the system.) 217. 206. T FMENDPAGE %%Trailer %%Pages: 5 1 %%DocumentFonts: Times-Roman %%+ Times-Bold %%+ Times-Italic %%+ Times-BoldItalic %%+ Courier