privileges - What does gate mean in the Multics operating system?

06
2014-04
  • Fatime

    I read Multics operating system. In the segment descriptor word (book) there is one part for number of gates for the segment. What does gate mean? I know the process can enter a higher-privileged ring if the gates allow (use one of the valid segment gates as an entry point) but I don't know correctly what does gate mean?

    Thanks.

  • Answers
  • Mike Mondy

    A gate is simply a specially declared entry point (an entry point would be called a routine, function, or procedure in today's language). The compiler or assembler will generate additional information for entry points that are gates. A gate entry point can be called by code that is running at a less privileged ring than that of the gate. Non gate entry points cannot be called from code running in higher numbered (less privileged) rings.

    See section 8 of the AL-39 manual and the description of the call6 instruction for more detail. Here's a snippit:

    Gates are procedures residing in a given ring and intended to provide controlled access to the ring. A program that is in ring R can enter an inner ring r only by calling one of the gate procedures associated with this inner ring r. Gates must be carefully coded and must not trust any data that has been manufactured or modified by the caller in a less privileged ring. In particular, gates must validate all arguments passed to them by the caller so as not to compromise the protection of any segment residing in the inner ring.


  • Related Question

    linux - "Stable" operating system - what does it mean exactly?
  • Maciej Ziarko

    I've been using Linux for more than 2 years now, and I'm a satisfied user. I started with Ubuntu, then switched to Fedora and now I'm fond of Linux Mint.

    Linux is often described as "stable". I have some inkling of what it might mean, but today I felt the need to understand it completely.

    So my question is...

    What does it mean that operating system is stable? What are the features of stable system?


  • Related Answers
  • Nifle

    A "stable" OS, much like a "stable" application of any kind, is simply one that is not prone to error, or is robust enough to deal with said error without the operating system ceasing to, well, operate. There is no real standard for calling an OS "stable"; it can vary among distros, and even build-to-build (you may hear of getting the "latest stable build", as opposed to a "beta" build), but generally the term will stick where it applies.

  • Jason Sherman

    There are often both stable & unstable versions of software by open source projects. 'Stable' means that a version has already been tested and used, so it will often times have fewer bugs than the 'unstable' version, which is less well-tested. If you're using Linux as a production server NEVER use a unstable version, because it may have security holes or unknown bugs. However, sometimes the stable version won't have some features that have been added to the unstable version.

  • MarkR

    For me, "Stable" means it doesn't change very much. So a "Stable" version of a distribution, might have security updates but few other changes; certainly none which are likely to make a working application stop working.

    An "Unstable" means that it is liable to change its interfaces, e.g. APIs, command structure, filesystem layout, or other things which can cause a working system to become a non-working one.

  • ultrasawblade

    The Debian project (and possibly other Linux distributions) uses the term "stable" and "unstable" to describe releases in the manner @evotopid states.

    @KeithS is also correct. "Stable" doesn't have an official definition apart from that.