standards: bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 andrew josey director of...

77
30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: [email protected] Standards: Standards: Bridging the Bridging the Generation Gap between Generation Gap between Linux® and UNIX® Systems Linux® and UNIX® Systems UNIX is a registered trademark of The Open Group Linux is a registered trademark of Linus Torvalds

Upload: others

Post on 09-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 1

Andrew JoseyDirector of Certification The Open GroupEmail: [email protected]

Standards: Standards: Bridging the Bridging the Generation Gap between Generation Gap between Linux® and UNIX® SystemsLinux® and UNIX® Systems

UNIX is a registered trademark of The Open GroupLinux is a registered trademark of Linus Torvalds

Page 2: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 2

Agenda

This talk covers…A review of the latest open systems standardsHow Linux shapes up to them

Page 3: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 3

Agenda (Cont’d)

Standards ProjectsPOSIXThe Single UNIX Specification The Linux Standard Base (LSB)

Page 4: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 4

"Despite their well earned reputation as a source of confusion, standards are one of the enabling factors behind the success of Linux. If it weren't for the adoption of the right standards by Linus Torvalds and other developers, Linux would likely be a small footnote in the history of operating systems. " - Dan Quinlan, Free Standards Group Chairman

Page 5: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 5

The Free Market

The key to the growth of the Linux market is the free-market demands placed upon suppliers by Open StandardsThese systems ultimately compete on quality and added value features to retain customersDissatisfied customers can move onto another supplier

Page 6: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 6

SourceAPI Stds

SourcePortability

SpecifyLinuxBehavior

BinaryStds

ShrinkWrappedApplications

Source vs Binary Standards

Page 7: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 7

Agenda

Standards ProjectsPOSIXThe Single UNIX SpecificationThe Linux Standards Base

Page 8: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 8

POSIX® /pahz-icks/

POSIX , pronounced pahz-icks as in positive, not poh-six, or other variationsPOSIX is a registered trademark of the IEEEAn acronym for Portable Operating System Interface

Page 9: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 9

What is POSIX?

POSIX is the codification and de jurestandardization of the common core of UNIX® practice, and now of Realtime OS practice

The basic objective is portability of both programmers and application source codePortability of the OS kernel itself and/or application binary code are not objectives

Page 10: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 10

What is POSIX (Cont’d)?

POSIX is a set of books specifying APIsIt is neither a piece of code nor an operating system

Page 11: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 11

What is an API?

Application Program InterfaceA written contract between system developers and application developers Its not a piece of code, it is a piece of paper defining what the two sets of developers are guaranteed to receive and are in turn responsible for providing

Page 12: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 12

POSIX® /pahz-icks/

Today POSIX is a family of standards developed by the Portable Applications Standards Committee (PASC) of the IEEE Computer SocietyMain subject areas:

System Interfaces (C, Fortran, ADA Bindings)Commands & UtilitiesTest Methods

Page 13: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 13

POSIX Deliverables

POSIX.1-1990 System Interfaces (C language binding)POSIX.2-1992 Shell & UtilitiesPOSIX.5-1992 Ada bindingsPOSIX.1b-1993 Realtime ExtensionPOSIX.1c-1995 Threads ExtensionPOSIX.5b-1996 Ada Realtime ExtensionPOSIX 1003.13-1998 Realtime Profiles

Page 14: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 14

POSIX Latest Deliverable

POSIX.1-2001 Approved December 6th 2001

Developed by the Austin Group (see later)Supersedes POSIX.1-1990 and its amendments and POSIX.2-1992 and its Amendments

Page 15: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 15

The Success of POSIX

The majority of UNIX system suppliers today support POSIXA core component of LinuxMany other systems also now support POSIX, for example VMS, MVS, MPE and even Microsoft Windows NTIt is now so successful that it has lost its role as a market differentiator

Page 16: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 16

POSIX building blocks

POSIX provides the foundations and building blocks for Open SystemsNot all systems support all POSIX functionalityNeither is POSIX functionally complete

Page 17: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 17

POSIX.1 and Linux

Linux mostly compatible at the source level with IEEE POSIX 1003.1-1990Early versions were certified for FIPS 151-2 complianceTest suites are available to measure compliance:

http://www.opengroup.org/testing/downloads.html

Page 18: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 18

POSIX.1c and Linux

Linux has a partial pthreads implementationMost of the APIs are presentSome semantic differencesNGPT Threads implementation (see next slide) shows a solution possible but not yet accepted

The gLSB includes a section giving advice to the programmer on how to work around the differences.

Page 19: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 19

Next Generation POSIX Threads (NGPT)

Userlevel library providing the POSIX threads APIUses a modified clone() interfaceIntegrates into glibc as a LinuxThreadsreplacementNGPT 1.0 released June 2001NGPT 1.1.2 due to be released Jan 25 2002A solution for some markets, but implementation concerns by some mean not yet accepted into mainstream Linux

Page 20: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 20

POSIX.2 and Linux

Recent distributions are getting closer to POSIX.2 and provide most of the required utilitiesUsually differences hidden by POSIXLY_CORRECT environment variableKnown differences: split, du, dfThe gLSB includes a set of man pages for the commands and utilities listing the differences when applicable

Page 21: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 21

Agenda

Standards Projects� POSIX

The Single UNIX SpecificationThe Linux Standards Base

Page 22: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 22

The Single UNIX Specification

Designed to give software developers a single set of APIs to be supported by every UNIX systemShifts the focus from incompatible UNIX system product implementations to compliance to a single set of APIsIf an OS meets the specification and commonly available applications run on it then it is open.

Page 23: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 23

The Single UNIX Specification Version 2

The Single UNIX The Single UNIX

Specification Specification

Version 2Version 2

The The SingleSingle UNIX UNIX

SpecificationSpecification

Formal Standards

Industry Practice

Page 24: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 24

POSIX and UNIX Synergy

The Single UNIX Specification builds on the foundation of international standards:

mandates POSIX options to form a rich foundation which you can depend onISO/IEC 9945-2:1992 (Shell & Utilities)ISO/IEC 9899:1990/Amendment 1:1995 (Multibyte support

Page 25: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 25

Linux Status

Recent versions of glibc have been getting closer to full coverage of the Single UNIX Specification Version 2Closer still to the Single UNIX Specification Version 3

Page 26: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 26

0

500

1000

1500

2000

2500

3000

3500

SingleUNIX

XPG4Base

SVID3Base

AES POSIX1003.2

1003.1-90FIPS 151-2

199130

489582390607

1168

UNIX 98Workstation

1434

POSIX 1003.1-1996

3030

SingleUNIX Version 2

Interface Counts

Page 27: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 27

Linux Status (Cont'd)

Some features not implemented:STREAMS (isastream, getmsg, putmsg, etc.) XTI (t_alloc, etc)

Page 28: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 28

Linux Status

Some features partially implemented :Wide characters (complete support in glibc 2.2 and later)Pthreads

Page 29: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 29

Linux Utilities

Some differences Mainly due to the standards being aligned with System V historical definitions

notably the shell (sh)Some efforts made with bash to align with POSIX as a result of the LSB test efforts (see the VSC-lite test suite which contains tests for the utilities and shell)

Page 30: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 30

Linux Utilities (Cont'd)

In general, where Linux provides an alternative functionality to that in the Single UNIX specification, the standard version is not provided

Compress/uncompress vs gzip/gunzipSCCS utilities vs RCS

As per POSIX.2; see the gLSB specification for details of the differences

Page 31: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 31

The Single UNIX SpecificationVersion 3

Developed by the Austin Common Standards Revision GroupAn open industry initiative to revise the core POSIX standard and the Single UNIX Specification; standards that lie at the heart of the Linux operating system

Page 32: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 32

The Austin Group

Electronic participationParticipation in the group is freeDeliverables:

IEEE Std 1003.1-2001 (POSIX.1)The Open Group Base Specifications Issue 6(they are the same document!)

Page 33: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 33

About the Austin Group

Over 700 participants on the mailing listWide industry support:

AT&T, Compaq, Fujitsu, HP, IBM, Lucent, Microsoft, Red Hat, SGI, Siemens, SunDoD, USENIX, Canada revenue

Participation in the Austin Group from the open source community includes:

The Linux Standard Base, NetBSD, FreeBSD, and many others

Page 34: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 34

Objectives

To target the joint specification at the programmer / user rather than the system implementerOrganization based on the Core volumes of the Single UNIX Specification, organized alphabetically, and including RationaleTo Produce a standard on schedule

Page 35: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 35

Scope of the revision

Production of a single document to be adopted by multiple partiesMinimize the number of changes required to implementations of earlier versions of the Base documents for the revisionLimit new work items to those related to integration and consistency, resolving any conflictsAlignment with the ISO C 1999 standard

Page 36: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 36

ISO C99

RevisedStandard

POSIX.1-1996 POSIXamendments1d,1g,1j,1q

Draft 1JointRevision

Draft 5Review draft

1999

Single UNIXSpecificationVersion 2

1003.1a,1003.2b,1003.2dPOSIX.2-1993

2H2001

Sanity Review

ISO C99

POSIXamendments1d,1g,1j,1q

Draft 1JointRevision

Draft 5Review draft

2000 2001

1003.1a,1003.2b,1003.2d

Sanity Review

Roadmap

Page 37: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 37

The New Common Specification

Rat

iona

le

Syst

em In

terf

aces

Def

initi

ons

Com

man

dsIEEE Std 1003.1-2001,

The Open Group Base Specifications Issue 6

Page 38: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 38

Approvals Status

The Open Group September 12th 2001IEEE December 6th 2001Expected ISO/IEC Approval in 1H2002

Page 39: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002

Portability Functions

0

200

400

600

800

1000

1200

1400

1600

1800

SingleUNIX

XPG4Base

SVID3Base

AES POSIX1003.2

1003.1-90FIPS 151-2

199130

489582

390

607

1168

Single UNIXVersion 3

1434

POSIX 1003.1-1996

1741

SingleUNIX Version 2

Page 40: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 40

Interface Count

1122

160 84

375

0

200

400

600

800

1000

1200

XSH XCU XBD Xcurses

Total: 1741

Page 41: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 41

Formal Standards Alignment

IEEE Std 1003.1-2001 (POSIX.1)The Base Specifications Issue 6 is technically identical to POSIX.1, they are one and the same document

ISO/IEC 9899:1999, Programming Languages – C (ISO C)

Page 42: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 42

Options

EncryptionRealtimeRealtime ThreadsAdvanced RealtimeAdvanced Realtime ThreadsTracingXSI STREAMSLegacy

Page 43: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 43

Feature Test Macros

_XOPEN_SOURCE=600Used by applications to request the implementation make available the symbols and prototypes from the Single UNIX Spec V3Subsumes the definition of the POSIX macro _POSIX_C_SOURCE=200112L

Page 44: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

Compiling an Application

c99 -D_XOPEN_SOURCE=600 myapp.c \-o myapp -l c

c99 -D_XOPEN_SOURCE=600 myrtapp.c \-o myrtapp -l c –l rt

c99 -D_XOPEN_SOURCE=600 myrtthreadsapp.c \-o myrthreadsapp -l rt -l pthread

44

Page 45: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 45

New Features 1003.1d

Process creation via posix_spawn()Sporadic Server Scheduling policyExecution time monitoring Time-outs for selected blocking functions

Page 46: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 46

New Features

Enhanced threads functions:barriersspin locks

Additional realtime functionality:monotonic clocksynchronized clock

1003.1j

Page 47: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 47

New Features

1003.1q , TracingProvides tools to access and manage a stream of event data :

Traced process can record a trace eventController process can manage a trace streamAnalyzer process can retrieve traced events

1003.1q

Page 48: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 48

New Features

IP version 6Overcomes the shortage of address spaceDesigned for better manageability

Security enhancements ¥ IPSEC

Quality of service

IP v 6

Page 49: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 49

New Features

API Enhancementsnew functions if_freenameindex(), if_indextoname(), if_nameindex() and if_nametoindex() have been added to the Sockets Interfaces. New functions inet_ntop() and inet_pton() have been added to the IP Address Resolution Interfaces.

IP v 6

Page 50: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 50

New Features

The UNIX feature set is now available as an option within POSIX The new document set forms the core of the Single UNIX Specification Version 3Extended pthreads functions

UNIX

Page 51: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 51

New Features

ISO/IEC 9899:1999 ISO C (c99)Language changes

New keywords: inline, restrict, _Bool, _Complex, _Imaginary, long long

Complex number and complex mathsFloating point environment supportType generic mathOther library changes

C99

Page 52: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 52

Key Changes

Legacy and obsolescent features droppedMuch of this was to compromise between System V and BSD

Job control and certain options in POSIX.1 mandated (FIPS 151-2 alignment)

dittoCorrigenda incorporated

Page 53: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 53

Key Changes (Cont'd)

XTI droppedIs retained a separate specification but not required for POSIX or UNIX conformance

STREAMS optionalAn optional feature group for those systems that wish to support the functionality

Page 54: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 54

Where to Obtain the Specification?

The html version is online athttp://www.UNIX-systems.org/version3

PDF either electronically or on CDROM can be ordered from http://www.opengroup.org/pubs/catalog/un.htm

The PDF is free to members of The Open Group

Available also on CDROM with The Authorized Guide to the Single UNIX Specification Version 3 (coming soon!)

Page 55: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 55

Linux Status

Latest versions of glibc have implemented much of the Austin Group specification

C99 AlignmentSome differences in the I18N behaviorSee http://gcc.gnu.org/c99status.html for the latest status

Concentrated on the XSI mandatory parts of the XSH documentRemaining differences due to underlying kernel

Page 56: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 56

Agenda

Standards Projects� POSIX� The Single UNIX Specification

The Linux Standards Base

Page 57: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 57

Why the LSB is important

Linux is the binary standard for the Intel processor architectureThe LSB has the promise to deliver shrink-wrapped commodity binary applications

Page 58: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 58

LSB Overview

Mission & GoalsWhy is the LSB needed? OrganizationWhat LSB does NOT attempt to do & whyArchitectural Overview - How will it work?Current LSB Roadmap

Page 59: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 59

Mission

The LSB develops and promotes a set of standards that increases compatibility among Linux distributions and enables software applications to run on any compliant Linux system.In addition, the LSB helps coordinate efforts to recruit software vendors to port and write products for Linux.

Page 60: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 60

Goals

To preserve backwards compatibility without locking out future progressTo allow distributions to still be unique (and provide added value) by only standardizing the baseTo avoid fragmentation of the base functionality

Page 61: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 61

Why is the LSB Needed?

Allows ISVs to:Minimize issues in porting code from another Linux platformAllows a package to perform the same way regardless of the Linux distribution or emulation of such

Page 62: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 62

Organization

Steering Committee Chair - George Kraft IVFSG liaisons -Scott McNeil, Dan QuinlanTechnical Sub-Committees

Written Spec - Technical Lead - Stuart AndersonTest Suites - Technical Lead - Andrew JoseySample Implementation - Technical Lead - RalfFlaxaLSB Futures – Technical Lead – Matt Taggart

Many volunteers

Page 63: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 63

What is not covered?

It does not mean there will only be one "Linux"

One port - multiple platform choicesIt does not specify the kernel level

The kernel can be any version that provides conforming interfaces

It does not cover languages other than COther languages will be covered over time

Page 64: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 64

What is not covered?

It does not specify a desktop environment Desktop integration is a work in progressUse desktop independent toolkits (Qt, Gtk)

It does not fully cover system administrationSettled areas are specified - Others will be added

Page 65: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 65

LSB Specification

A generic, processor-independent specification

The Generic LSB Specification known as thegLSB

One or more processor-specific supplemental specifications that build upon the gLSB to provide a complete binary specification

Intel x86, Intel ia64

Page 66: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 66

LSB Specification

Object file formatsDynamic linkingBase librariesUtility librariesGraphics LibrariesPackaging

Commands and UtilitiesStandard ShellUsers and GroupsFilesystem HierarchySystem Initialization

Page 67: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 67

Architectural Overview

Linux Kernel Layer

LSB ABI Non-LSB ABI

ISV libs (static) ISV libs(dynamic)

Static libs Dynam. libs

LSB conforming application

Non-conforming application

I II III IV V VI VII

Page 68: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 68

Standards Alignment

Built on industry standardsIEEE Std POSIX 1003.1-1996 (POSIX.1)IEEE Std POSIX 1003.2-1992 (POSIX.2)The Open Group Single UNIX Specification Version 2 (aka UNIX 98)AT&T (Caldera/SCO) SVID, Issue 3 1989-2001 (SVID.3)See www.linuxbase.org/spec/gLSB/gLSB/rstandards.html

� 36 Specifications referenced at this time

Page 69: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 69

Current Status

Written 1.0 gLSB Spec Released June 2001Pilot Beta test program August 2001gLSB 1.1 specification December 31 2001psLSB for Intel x86 December 31 2001psLSB for Intel ia64 expected end 1Q2002gLSB 1.2 4Q2002?

Page 70: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 70

gLSB 1.1 vs 1.0

Designed to be a supersetSome exceptions

Bug fixes Additions of functions identifed as needed by applicationsImproved data definitionsFurther changes needed to support psLSBs

Page 71: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 71

Current Status (Cont’d)

Test Suite 1.0 golden release December 3rd

2001LSB-FHSVSX-PCTSLSB-OSLSB-USRGROUPS

Binary Test Suite release December 31st

2001Certification Pilot launch January 2002Certification program to launch 2Q2002

Page 72: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 72

Application Tools

lsbappchkUsed during the build process, similar to gccUses same flags, but instead of producing compiled code it checks that the binary file(s) being produced comply with the LSB spec

FHS Checklist6 basic questions about the applications directory usage Allowance for deviation when rationale justifies it

Page 73: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 73

LSB Resources

LSB main site - www.linuxbase.orgFree Standards Group -www.freestandards.org/The LSB Specification -www.linuxbase.org/

LSB Testwww.linuxbase.org/test/

LSB Sample Implementation www.linuxbase.org/impl/

LSB Futureshttp://www.linuxbase.org/futures/

Page 74: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 74

Summary

Standards activitiesalive and ongoingfree to participate in

Significant cross-fertilization of projectsSignificant opportunities to grow the market and prevent fragmentation

Page 75: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 75

Further Information

The Linux Standards Basehttp://www.linuxbase.org

The Austin Grouphttp://www.opengroup.org/austin

The Single UNIX Specificationhttp://www.UNIX-systems.org

These slideshttp://www.UNIX-systems.org/slides.html

Page 76: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 76

How You Can Help?

To participate in the Austin Group, join the mailing list by visiting the web site at:

http://www.opengroup.org/austin/To participate in the Linux Standards Base visit:

http://www.linuxbase.org/To join the Free Standards Group, visit:

http://www.freestandards.org/

Page 77: Standards: Bridging theunix.org/slides/lwe2002-r.pdf · 30-01-2002 1 Andrew Josey Director of Certification The Open Group Email: a.josey@opengroup.org Standards: Bridging the Generation

30-01-2002 77

Andrew JoseyDirector of Certification The Open GroupEmail: [email protected]

Standards: Standards: Bridging the Bridging the Generation Gap between Generation Gap between Linux® and UNIX® SystemsLinux® and UNIX® Systems

UNIX is a registered trademark of The Open GroupLinux is a registered trademark of Linus Torvalds