⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 if_uba.h

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 H
字号:
/*  * @(#)if_uba.h	4.1 	Ultrix 7/2/90 *//************************************************************************ *									* *			Copyright (c) 1985 by				* *		Digital Equipment Corporation, Maynard, MA		* *			All rights reserved.				* *									* *   This software is furnished under a license and may be used and	* *   copied  only  in accordance with the terms of such license and	* *   with the  inclusion  of  the  above  copyright  notice.   This	* *   software  or  any  other copies thereof may not be provided or	* *   otherwise made available to any other person.  No title to and	* *   ownership of the software is hereby transferred.			* *									* *   This software is  derived  from  software  received  from  the	* *   University    of   California,   Berkeley,   and   from   Bell	* *   Laboratories.  Use, duplication, or disclosure is  subject  to	* *   restrictions  under  license  agreements  with  University  of	* *   California and with AT&T.						* *									* *   The information in this software is subject to change  without	* *   notice  and should not be construed as a commitment by Digital	* *   Equipment Corporation.						* *									* *   Digital assumes no responsibility for the use  or  reliability	* *   of its software on equipment which is not supplied by Digital.	* *									* ************************************************************************//* ------------------------------------------------------------------------ * Modification History: /sys/vaxif/if_uba.h * * 11-jul-85 -- jaw *	fix bua/bda map registers. * * 19-Jun-85 -- jaw *	VAX8200 name change. *  * 13 Mar 85 -- Jaw * 	add support for VAX8200 and bua.	 * * ----------------------------------------------------------------------- *//* * Structure and routine definitions * for UNIBUS network interfaces. */#define	IF_MAXNUBAMR	10/* * Each interface has one of these structures giving information * about UNIBUS resources held by the interface. * * We hold IF_NUBAMR map registers for datagram data, starting * at ifr_mr.  Map register ifr_mr[-1] maps the local network header * ending on the page boundary.  Bdp's are reserved for read and for * write, given by ifr_bdp.  The prototype of the map register for * read and for write is saved in ifr_proto. * * When write transfers are not full pages on page boundaries we just * copy the data into the pages mapped on the UNIBUS and start the * transfer.  If a write transfer is of a (1024 byte) page on a page * boundary, we swap in UNIBUS pte's to reference the pages, and then * remap the initial pages (from ifu_wmap) when the transfer completes. * * When read transfers give whole pages of data to be input, we * allocate page frames from a network page list and trade them * with the pages already containing the data, mapping the allocated * pages to replace the input pages for the next UNIBUS data input. */struct	ifuba {	short	ifu_uban;			/* uba number */	short	ifu_hlen;			/* local net header length */	struct	uba_regs *ifu_uba;		/* uba regs, in vm */	struct ifrw {		caddr_t	ifrw_addr;		/* virt addr of header */		int	ifrw_bdp;		/* unibus bdp */		int	ifrw_info;		/* value from ubaalloc */		int	ifrw_proto;		/* map register prototype */		struct	pte *ifrw_mr;		/* base of map registers */	} ifu_r, ifu_w;	struct	pte ifu_wmap[IF_MAXNUBAMR];	/* base pages for output */	short	ifu_xswapd;			/* mask of clusters swapped */	short	ifu_flags;			/* used during uballoc's */	struct	mbuf *ifu_xtofree;		/* pages being dma'd out */};#ifdef 	KERNELstruct	mbuf *if_rubaget();#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -