Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Simulated driver for Network Interface Adapter Post 302464687 by Corona688 on Wednesday 20th of October 2010 05:55:55 PM
Old 10-20-2010
netbeans? Isn't that java?

You're going to need to install gcc and your kernel source. I think you're going to be doing your work in a terminal, not any sort of IDE. Compiling code for the kernel is very different from compiling code for your system.

Following this tutorial I was able to create a do-nothing character driver, but had to modify their instructions slightly:

Code:
# from magazine
make -C /usr/src/kernel-source-2.6.8 M=pwd modules
# what I needed
make -C /usr/src/linux M=${pwd} modules

...what this is doing is telling make to use the makefile that came with your kernel (in my case stored in /usr/src/linux/Makefile) to compile your source, which spares you a lot of headaches. That M variable tells it where to find your own makefile once it's set up.

I think pwd vs ${pwd} was a typo in the magazine itself, but /usr/src/linux is just where my system keeps its kernel sources. Yours may be something else, or probably not even installed right now.

Note that a network driver is not a character driver. But I'd think they get built it the same way.

Last edited by Corona688; 10-20-2010 at 07:06 PM..
This User Gave Thanks to Corona688 For This Post:
 

10 More Discussions You Might Find Interesting

1. AIX

hacmp network adapter re-define

I have an LPAR in a P5 machine which has been setup in an HACMP cluster. The person who set it up allocated the wrong network adapter (en) to the persistent network. For the life of me I cannot find where I can re-assign this adapter. Anyone able to help me as I am tearing my hair out and do not... (1 Reply)
Discussion started by: johnf
1 Replies

2. AIX

change network adapter

hello i've need to change network adapter on machine H80 aix 4.3.3 hacmp ( ent0 ) what i need to do after the new adapter installed on the machine? thanks best regards ariec (1 Reply)
Discussion started by: ariec
1 Replies

3. AIX

How to active this network adapter?

When I configure two VIO Servers, VIOS1 used to ping its gateway, after I configured second VIOS2, VIOS1 cannpt ping its gateway, when I run this command: entstat -all ent#|grep -i priority Priority: 5 Active: False How to make Active to True? (1 Reply)
Discussion started by: rainbow_bean
1 Replies

4. UNIX for Dummies Questions & Answers

External Network Adapter for Solaris 10

Hi All, I am new here - this is my first post. I have installed Solaris 10 5/09 on my Dell M6300. The install went well, but the Dell's onboard network card is the Broadcom BCM5756ME Gigabit Ethernet - and sadly no Solaris driver exists for it. The Solaris 10 install just jumped by the... (1 Reply)
Discussion started by: soulmerchant
1 Replies

5. Programming

Compiling virtual network adapter driver problem (net_device struct)

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 and Linux Applications

Access to network interface (Mac-network)

Hi, I'm a italian student. For my thesis I develop a gateway with protocol 6lowpan. For that I must access to network interface to develope my personal stack based on standard 802.15.4. Can you help me? I need an explanation for that. (0 Replies)
Discussion started by: berny88
0 Replies

7. Hardware

Need Sun 10-Gigabit Ethernet Adapter CD or ixge driver

Hi, Does anybody have a "Sun 10-Gigabit Ethernet Adapter installation CD" or driver ixge for Sun 10-Gigabit Ethernet PCI-X adapter? I need it but can't find it anywhere. So if you know where I can download it or purchase it, please let me know. (Already tried Oracle's website, don't have it) ... (5 Replies)
Discussion started by: Lhao
5 Replies

8. Solaris

Attach Solaris 11.1 rwn driver to RaLink RT8200/8260 Wi Fi Adapter

I installed Solaris 11.1 on a X86 PC. It's working except for one glaring problem : I cannot get a driver attached to the RaLink RT2800 (Wi Fi Adapter). Can someone point me in the direction where " the correct" driver exists, or let me know how I can tell Solaris to attach the device to the... (1 Reply)
Discussion started by: JWH
1 Replies

9. UNIX for Dummies Questions & Answers

Adding a network interface to a bonded interface

I have a RHEL 5 system with a bonded interface configure using only one network port (eth0). So I have config file for ifcfg-bond0 and ifcfg-eth. I'd like to configure eth5 to be the second SLAVE in the bond. My question is, after I modify ifcfg-eth5, can I add eth5 to the bond0 interface without... (1 Reply)
Discussion started by: westmoreland
1 Replies

10. AIX

Misconfiguration detected Adapter interface name en 3 Adapter offset 0

Hi, We had a hardware problem with an IBM System p5 server, with AIX 5.2 We restore from a tape the last backup we had, but the server does not boot up as expected. The server try to mount some directories from a storage, but could not comunicate with them, we check the FC and everything is... (12 Replies)
Discussion started by: trevian3969
12 Replies
MODULE(7)					       BSD Miscellaneous Information Manual						 MODULE(7)

NAME
module -- Kernel Modules interface SYNOPSIS
options MODULAR DESCRIPTION
Kernel modules allow the system administrator to dynamically add and remove functionality from a running system. This ability also helps software developers to develop new parts of the kernel without constantly rebooting to test their changes. Additionally, the kernel may automatically load software modules as needed to perform requested operations. For example, an ``xyzfs'' module can be loaded automatically when an attempt is made to mount an ``xyzfs'' file system. Modules can also depend on other modules, and depen- dent modules are automatically loaded. When a module is no longer needed, it can be automatically unloaded. An in-kernel linker resolves symbol references between the module and the rest of the kernel. The module interface is accessed with the modctl(2) system call. All common operations involving kernel modules are handled by the modload(8), modunload(8), and modstat(8) programs. Users should never have to interact with modctl(2) directly. MODULE CLASSES
Virtual File System modules Virtual file systems may be added via the module interface. Device Driver modules Many device drivers can be loaded as a kernel module. One potential problem specific to block and character device drivers is that the device nodes must exist for the devices to be accessed. These need to be created manually, after the driver module has been successfully loaded. The majority of the device driver modules however does not need any manual intervention to function properly. Execution Interpreters Execution Interpreters can be loaded to provide support for executing binaries not normally supported by kernel. This also allows loading support for executing foreign system binaries. Execution Interpreters may require that an appropriate emulation module also be loaded. Miscellaneous modules Miscellaneous modules are modules for which there are not currently well-defined or well-used interfaces for extension. They are provided for extension, and the user-provided module initialization routine is expected to install the necessary "hooks" into the rest of the operat- ing system. An example of a "miscellaneous module" might be a loader for card-specific VGA drivers or alternate terminal emulations in an appropriately layered console driver. Security-Model modules Alternate system security models may loaded using the module facility. EXAMPLES
The common build tool of NetBSD, ``build.sh'', automatically compiles and installs all modules during a full system build and install. Some- times it is however useful to update only modules. The following example demonstrates one way to do this. It is assumed that the source code is under /usr/src, while the object and toolchain directories are under /usr/obj and /usr/tools, respectively. cd /usr/src/sys/modules export OBJDIR=/usr/obj export TOOLDIR=/usr/tools make clean make make install SEE ALSO
modctl(2), modload(8), modstat(8), modunload(8), module(9) HISTORY
The module facility was designed to be similar in functionality to the loadable kernel modules facility provided by SunOS 4.1.3. The old LKM interface was replaced by module in NetBSD 5.0. AUTHORS
The module subsystem was implemented by Andrew Doran <ad@netbsd.org>. CAVEATS
The module framework is still under active development. At least two potential caveats can be mentioned. 1. Kernel modules are built to operate only with a specific version of the NetBSD kernel. When the kernel is updated to a new version, the contents of the /stand/${ARCH}/${VERSION}/modules/ directory should be updated as well. (This location has been the subject of much discussion, and may change in future versions of NetBSD.) 2. If an attempt is made to boot the operating system from a file system for which the module is not built into the kernel, the boot may fail with the message ``Cannot mount root, error 79''. On certain architectures (currently, i386 and amd64), one may be able to recover from this error by using the ``load xxxfs'' command before trying to boot. This command is only available on newer bootload- ers. The absence of required modules or the inability of the bootloader to load the modules are common reasons for failures to boot a MODULAR ker- nel. It may be a good practice to maintain a non-MODULAR kernel in the root file system for recovery purposes. SECURITY CONSIDERATIONS
A module becomes part of the kernel once loaded. Compared to userland programs, all errors in the code can be fatal. There is no memory protection between modules and the rest of the kernel. Hence, a potential attacker with access to the modctl(2) system call can acquire com- plete and total control over the system. To avoid associated security risks, new modules can only be loaded when securelevel is less than or equal to zero, or if the kernel was built with options INSECURE. Refer to secmodel_securelevel(9) for additional details on the securelevel. Only use modules from trusted sources. BSD
December 14, 2010 BSD
All times are GMT -4. The time now is 07:11 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy