ddi_ffs(9F) Kernel Functions for Drivers ddi_ffs(9F)NAME
ddi_ffs, ddi_fls - find first (last) bit set in a long integer
SYNOPSIS
#include <sys/conf.h>
#include <sys/ddi.h>
#include <sys/sunddi.h>
intddi_ffs(long mask);
int ddi_fls(long mask);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI).
PARAMETERS
mask A 32-bit argument value to search through.
DESCRIPTION
The function ddi_ffs() takes its argument and returns the shift count that the first (least significant) bit set in the argument corre-
sponds to. The function ddi_fls() does the same, only it returns the shift count for the last (most significant) bit set in the argument.
RETURN VALUES
0 No bits are set in mask.
N Bit N is the least significant (ddi_ffs) or most significant (ddi_fls) bit set in mask. Bits are numbered from 1 to 32, with
bit 1 being the least significant bit position and bit 32 the most significant position.
CONTEXT
This function can be called from user or interrupt context.
SEE ALSO
Writing Device Drivers
SunOS 5.10 20 Dec 1995 ddi_ffs(9F)
Check Out this Related Man Page
BITS(3) BSD Library Functions Manual BITS(3)NAME
__BIT, __BITS, __SHIFTIN, __SHIFTOUT, __SHIFTOUT_MASK -- macros for preparing bitmasks and operating on bit fields
SYNOPSIS
#include <sys/param.h>
#include <sys/cdefs.h>
uintmax_t
__BIT(n);
uintmax_t
__BITS(m, n);
__SHIFTIN(v, mask);
__SHIFTOUT(v, mask);
__SHIFTOUT_MASK(mask);
DESCRIPTION
These macros prepare bitmasks, extract bitfields from words, and insert bitfields into words. A ``bitfield'' is a span of consecutive bits
defined by a bitmask, where 1s select the bits in the bitfield.
Use __BIT() and __BITS() to define bitmasks:
__BIT(n)
Return a bitmask with bit n set, where the least significant bit is bit 0.
__BITS(m, n)
Return a bitmask with bits m through n, inclusive, set. It does not matter whether m > n or m <= n. The least significant bit
is bit 0.
__SHIFTIN(), __SHIFTOUT(), and __SHIFTOUT_MASK() help read and write bitfields from words:
__SHIFTIN(v, mask)
Left-shift bits v into the bitfield defined by mask, and return them. No side-effects.
__SHIFTOUT(v, mask)
Extract and return the bitfield selected by mask from v, right-shifting the bits so that the rightmost selected bit is
at bit 0. No side-effects.
__SHIFTOUT_MASK(mask)
Right-shift the bits in mask so that the rightmost non-zero bit is at bit 0. This is useful for finding the greatest
unsigned value that a bitfield can hold. No side-effects. Note that __SHIFTOUT_MASK(m) = __SHIFTOUT(m, m).
EXAMPLES
The following example demonstrates basic usage of the bits macros:
uint32_t bits, mask, val;
bits = __BITS(2, 3); /* 00001100 */
mask = __BIT(2) | __BIT(3); /* 00001100 */
val = __SHIFTIN(0x03, mask); /* 00001100 */
val = __SHIFTOUT(0xf, mask); /* 00000011 */
SEE ALSO bitops(3), cdefs(3)HISTORY
The bits macros first appeared in atw(4), with different names and implementation. In their current form these macros appeared in
NetBSD 4.0.
AUTHORS
The bits macros were written by David Young <dyoung@NetBSD.org>.
Matt Thomas <matt@NetBSD.org> suggested important improvements to the implementation, and contributed the macro names SHIFTIN() and
SHIFTOUT().
BUGS
__BIT() and __BITS() can only express 32-bit bitmasks.
BSD October 17, 2012 BSD
Hi, i have a file like this:
A1
kdfjdljfdkljfdlf
A2
lfjdlfkjddkjf
A3
***no hit***
A4
ldjfldjfdk
A5
***no hit***
A6
jldfjdlfjdlkfjd
I want to remove the lines "***no hit*** and their above line to get an output file like this: (11 Replies)
Not my story, but interesting enough to be worth posting here IMHO. (Original is here)
The following is the 500-mile email story in the form it originally appeared, in a post to sage-members on Sun, 24 Nov 2002.:
From trey@sage.org Fri Nov 29 18:00:49 2002
Date: Sun, 24 Nov 2002 21:03:02... (3 Replies)
Hi everyone,
I know the following questions are noobish questions but I am asking them because I am confused about the basics of history behind UNIX and LINUX.
Ok onto business, my questions are-:
Was/Is UNIX ever an open source operating system ?
If UNIX was... (21 Replies)
Hi gurus,
I have a weird requirement. I need to convert the number to english lecture.
I have 1.2 ....19 numbers
I need to convert to first second third fourth, fifth, sixth...
Is there any way convert it using unix command?
thanks in advance. (8 Replies)
Hi,
Humorous UNIX Commands shows a fun way of using echo and dc to sort of obfuscate a string.
% echo 'sasb3135071790101768542287578439snlbxq'|dc
GET A LIFE!
I am just wanting to know if there is a way to sort of use dc and echo to print out an obfuscated/garbled string instead... (3 Replies)
Hi All,
Having recently started a new job, a Data Center Migration in fact I have been tasked with looking at some of the older Solaris boxes when I came across this little gem.
nismas# uname -a
SunOS nismas 5.5.1 Generic_103640-27 sun4u sparc SUNW,Ultra-1
nismas# uptime
10:37am up 2900... (2 Replies)
For any SunOS 5.XX release, it appears prior to the "login:" prompt (as if a "uname" command is run).
Would anyone know where that initial display of SunOS release comes from upon a remote login and how I can stop if from displaying?
Thank you (4 Replies)
I am trying to remove each line in which $2 is FP or RFP. I believe the below will remove one instance but not both. Thank you :).
file
12
123 FP
11
10 RFP
awk
awk -F'\t' '
$2 != "FP"' file
desired output
12
11 (6 Replies)
Hi everybody,
Which Unix base OS have best performance for HOST virtualization?
I tested SmartOS but it needs another OS to connect remotely!
Thanks in advance. (11 Replies)
I have this file:
>ID1
AA
>ID2
TTTTTT
>ID-3
AAAAAAAAA
>ID4
TTTTTTGGAGATCAGTAGCAGATGACAG-GGGGG-TGCACCCC
Add I am trying to use this script to output sequences longer than 15 characters:
sed -r '/^>/N;{/^.{,15}$/d}'
The desire output would be this:
>ID4... (8 Replies)
Hi,
I am having contents in a file like below,
cat testfile
rpool/swap
rpool/swap14
rpool/swap2
rpool/swap3
I want to sort the above contents like,
rpool/swap
rpool/swap2
rpool/swap3
rpool/swap14
I have tried in this way, (7 Replies)
Morning All
So, I am starting looking into the world of UNIX for a new job (luckily not my primary function!) and I am looking to get stared. Like anything I seem to learn best by trying things out first in an environment but I have a key question:
Currently I use Oracle VirtualBox, can... (8 Replies)