VxWorks网卡驱动实现方式及配置方法

作者:佚名 上传时间:2023-05-28 运行软件:Wind River Systems 软件版本:VxWorks 6.9 版权申诉

本文主要介绍了在VxWorks系统中如何实现网卡驱动及其配置方法,包括驱动程序编写、注册、挂载等,以及对应的配置文件的编辑及其参数解释。

#include <vxWorks.h>
#include <stdio.h>
#include <string.h>
#include <netLib.h>
#include <etherLib.h>

#define IFNAME "gei"
#define IFUNIT 0

int myifInit (char *ifname, int unit, int ivec, ushort intLevel);

/*自定义网卡驱动初始化函数*/
int myifInit (char *ifname, int unit, int ivec, ushort intLevel)
{
    int iface; //网卡接口描述符

    iface = if_attach (ether_attach, IFNAME, IFUNIT, ETHER_HDR_SIZE, TRUE, NULL);
    //将网卡驱动绑定至网卡接口上

    if (iface == ERROR)
    {
        printf ("Could not attach device %s%d.\n", IFNAME, IFUNIT);
        return (ERROR);
    }

    /* 配置网络地址、掩码等 */
    ifconfig (IFNAME, (char *) "10.0.0.2", (char *) "255.255.255.0");
    return (OK);
}

/*网卡驱动注册*/
void myifDriverRegister (void)
{
    ether_attach_func_add(myifInit, IFNAME);
}

/*网卡驱动挂载*/
void myifMount(char *dev, char *mntpnt)
{
    char devName [256];
    sprintf (devName, "%s%d",dev,IFUNIT);
    iosDevAdd ((DEV_HDR *) &myifDevHdr, devName, myifDevCreate, 0, 0, 0);
    /*Edit the boot parameters to include*/
    /*iosFdDevCreate (".gei",1,0); */
    iosDevAdd (NULL, devName, (FUNCPTR)ixVFS_devCreate, 0, 0, 0);
    dosFsDevInit (TAR_DISK,TRUE);
    /* Use myif as /tgtsvr */
    dosFsMkfs ("/tgtsvr",MSDOS2_FILE_SYSTEM);
    ioMkfs("/ram", "DOS", "ram disk");

    iosDevDelete(devName);
    iosDevRename(mntpnt, devName);   
}

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
VxWorks网卡驱动实现方式配置方法
本文主要介绍了在VxWorks系统中如何实现网卡驱动及其配置方法,包括驱动程序编写、注册、挂载等,以及对应的配置文件的编辑及其参数解释。#include <vxWorks.h>#inc
VxWorks 6.9
Wind River Systems
2023-05-28 03:31
VxWorks网卡驱动实现原理与优化方法探讨
本文将探讨如何在VxWorks中实现网卡驱动,并介绍一些优化方法,提高网卡驱动程序的性能。其中,我们将详细介绍如何操作PHY,以读取或修改网卡寄存器的值。此外,我们还将探讨如何在不同版本的VxWork
VxWorks 6.9
VxWorks
2023-04-18 05:14
如何在VxWorks实现网卡驱动
在VxWorks操作系统中,实现网卡驱动需要遵循一定的规则。本文将介绍如何在VxWorks上实现网卡驱动,同时提供示例代码、代码释义和总结。示例代码以下是一个简单的示例代码,用于实现一个基于VxW
7.0
VxWorks
2023-03-29 03:45
VxWorks网卡驱动模块实现与调试
本文介绍在VxWorks实时操作系统上实现和调试网卡驱动模块的方法和步骤,包括驱动程序结构、中断处理函数、数据缓冲区管理等方面内容。#include <vxWorks.h>#inclu
VxWorks 6.9
C/C++
2023-03-20 00:56
VxWorks网卡驱动设计
介绍VxWorks网络系统得基本原理和与结构,然后以Intel82557网卡驱动为例,着重介绍网络设备驱动程序设计与实现过程。本文对所有基于MUX机制下的VxWorks网络设备驱动程序开发者具有参考价
word
0B
2019-01-12 11:12
VxWorks网卡驱动开发实例
该示例代码展示了如何在VxWorks实时操作系统下开发网卡驱动。包括对网络系统的初始化、网卡的配置、接收和发送数据包的处理等方面,实现了一个简单的网卡驱动。/* 网络系统初始化 */void ne
VxWorks 7
Wind River Systems
2023-04-28 17:20
vxWorks下如何配置网卡
vxWorks下如何配置双网卡简单的问题,最好不要浪费积分了。。。不过分多就无所谓了。。
TXT
0B
2019-09-02 22:39
VxWorks实现网卡驱动的示例代码
本示例代码演示了如何在VxWorks操作系统中实现一个网卡驱动程序,用于驱动物理网卡,实现网络功能。// 网卡驱动的初始化函数int nicDrvInit(){ // 初始化硬件设备
VxWorks 6.9
VxWorks操作系统
2023-10-12 11:50
VxWorks网卡驱动开发实例
本示例展示如何在VxWorks系统中开发网络适配器驱动程序。使用C编程语言,通过相应的VxWorks API和网络库,实现对网卡的读写操作和数据传输。#include <vxWorks.h&g
VxWorks 6.9
Wind River Systems
2023-04-01 05:18
VxWorks 如何配置网卡
本示例代码通过 VxWorks 的相关 API 实现了如何配置网卡的功能,包括设置 IP、网关、子网掩码等信息。#include <inetLib.h>STATUS configur
VxWorks 6.9
Wind River Systems
2023-04-03 05:32