11-07-2002
Many C programs will compile just fine on HP-UX, but devices are very much different and rely on machine-specific code.
I tried very briefly and very fruitlessly a while back to use Linux device drivers to get some hardware running on HP-UX. Not to say it's not possible, but I would doubt it very very much - the kernel and the hardware are too different to simply port - it'd take a rewrite.
--------------
(Livin Free, please see my note at the end of the post below. Neo)
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
how to get modem driver for linux on intel netvista a22p model?please help.Thanks.:( (2 Replies)
Discussion started by: xinubhaskar
2 Replies
2. Programming
Gents,
i'm a senior applications developer and need to port a Linux server application ( no additional / special libraries or unique header files ) to a HPUX enviroment.
Any chance to compile it on the Linux using flags to create an HPUX binary with gcc? (8 Replies)
Discussion started by: anak0nda
8 Replies
3. UNIX for Dummies Questions & Answers
hai friend,
I am new to Linux, i need a book for Linux basic and Linux device driver ..
plz send the book name and author(Easy to learn and mostly used by programmers) and also send the link if it is available in Net...
Thank you.
... (0 Replies)
Discussion started by: sundar.lsr
0 Replies
4. Programming
Hello all, I am new to programming and currently I am taking a swing at Objective-C. I easily compile my programs on my Macintosh, and have compiled some Objective-C programs on my linux box.
The problem I am having is when I try to use features demonstrated in the book Programming in... (4 Replies)
Discussion started by: inquen
4 Replies
5. Programming
Hi,
I found on linuxgazette.net/93/bhaskaran.html page very useful sample of virtual driver (not connected to real hardware).
I try to compile it with no effect.
So:
I got fresh Ubuntu 9.10 (kernel 2.6.31-14)
My source is saved in networkAdapter.c file in /usr/src/myModules directory.
I... (21 Replies)
Discussion started by: Chrisdot
21 Replies
6. UNIX for Dummies Questions & Answers
I find Linux drivers to be the most elusive topic that there is and have enough questions about them that could fill a guide or tutorial if there was one.
From what I can gather drivers are installed by one of three ways.
1- Recompile the kernel to include a driver that is included in the... (2 Replies)
Discussion started by: theKbStockpiler
2 Replies
7. Programming
Hello,
I am writing to ask for support about compiling an very old but famous C-progam for genetics study called MapMaker/QTL, and the source code is available from MIT:
http://www.broadinstitute.org/ftp/distribution/software/mapmaker3/The program was originally designed for systems like SunOS... (1 Reply)
Discussion started by: yifangt
1 Replies
8. UNIX for Advanced & Expert Users
Hello,
Would you know the steps on how to compile git command in HPUX? (1 Reply)
Discussion started by: SystemAddict
1 Replies
9. Hardware
In general terms what are the differences platform driver,codec driver and Machine driver? (1 Reply)
Discussion started by: rupeshkp728
1 Replies
10. Shell Programming and Scripting
Hello,
I use Linux on Ubuntu 12.04.
I have a fortran script with extension .f and I want to compile it to an executable file in linux.
I have used this command:
f77 -o snp_hwe.exe snp_hwe.f
But I receive this error:
(.text+0x18): undefined reference to `main'
collect2: ld returned 1... (1 Reply)
Discussion started by: Homa
1 Replies
LEARN ABOUT OPENSOLARIS
id32_free
id32_alloc(9F) Kernel Functions for Drivers id32_alloc(9F)
NAME
id32_alloc, id32_free, id32_lookup - 32-bit driver ID management routines
SYNOPSIS
#include <sys/ddi.h>
#include <sys/id32.h>
uint32_t id32_alloc(void *ptr, int flag);
void id32_free(uint32_t token);
void *id32_lookup(uint32_t token);
INTERFACE LEVEL
Solaris architecture specific (Solaris DDI).
PARAMETERS
ptr any valid 32- or 64-bit pointer
flag determines whether caller can sleep for memory (see kmem_alloc(9F) for a description)
DESCRIPTION
These routines were originally developed so that device drivers could manage 64-bit pointers on devices that save space only for 32-bit
pointers.
Many device drivers need to pass a 32-bit value to the hardware when attempting I/O. Later, when that I/O completes, the only way the
driver has to identify the request that generated that I/O is via a "token". When the I/O is initiated, the driver passes this token to the
hardware. When the I/O completes the hardware passes back this 32-bit token.
Before Solaris supported 64-bit pointers, device drivers just passed a raw 32-bit pointer to the hardware. When pointers grew to be 64 bits
this was no longer possible. The id32_*() routines were created to help drivers translate between 64-bit pointers and a 32-bit token.
Given a 32- or 64-bit pointer, the routine id32_alloc() allocates a 32-bit token, returning 0 if KM_NOSLEEP was specified and memory could
not be allocated. The allocated token is passed back to id32_lookup() to obtain the original 32- or 64-bit pointer.
The routine id32_free() is used to free an allocated token. Once id32_free() is called, the supplied token is no longer valid.
Note that these routines have some degree of error checking. This is done so that an invalid token passed to id32_lookup() will not be
accepted as valid. When id32_lookup() detects an invalid token it returns NULL. Calling routines should check for this return value so that
they do not try to dereference a NULL pointer.
CONTEXT
These functions can be called from user or interrupt context. The routine id32_alloc() should not be called from interrupt context when the
KM_SLEEP flag is passed in. All other routines can be called from interrupt or kernel context.
SEE ALSO
kmem_alloc(9F)
Writing Device Drivers
SunOS 5.11 12 Dec 2001 id32_alloc(9F)