× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Andrew Goade wrote:
>
> ... I cannot seem to find a consistent definition for the
> O_SHARE_NONE option.
> ...

Andy, if you look in QSYSINC/H mbr FCNTL, you'll see this definition for
O_SHARE_NONE.

  #define O_SHARE_NONE   000002000000

The initial 0 (that's a zero) means that this is an octal (powers of
eight) number.  There are two ways to express this in RPG, as a
hexadimal number or a decimal number.

Here's how to get a hexadecimal number for it:

Start with the octal number.  I've added some blanks to make it easier
to see.
   0000 0200 0000

For each octal digit, write the 3 bits representing the digit.  0 = 000,
1 = 001, 2 = 010 etc.

   000 000 000 000   000 010 000 000   000 000 000 000

Now, push them all together:
   000000000000000010000000000000000000
and resplit them into groups of 4:
   0000 0000 0000 0000 1000 0000 0000 0000 0000
and then get the hex digit for each group of 4 (0000=0, 1001=9, 1111=F
etc)
   0 0 0 0 8 0 0 0 0
Remove or add zeros on the left to get 4 pairs
   00 08 00 00
And you get
   x'00080000'

Here's how to get a decimal number for it:

Start from the right and add multiples of powers of 8, starting with
8**0.  A different example makes this easier to illustrate:
07352 = (7 * 1)
      + (3 * 8)
      + (5 * 64)
      + (2 * 8 * 64)

O_SHARE_NONE, 000002000000, has all zeros except the 8**6 one, so the
decimal value is 2 * 8** 6 = 524288




As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.