[FreeBSD] FreeBSD5.3内核编译错误

weixin_38048170 2005-03-23 05:16:03

联想的笔记本,5.3的系统,出错信息:

MAKE=make sh ../../../conf/newvers.sh LinyinKernel
cc -c -O -pipe  -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I../../.. -I../../../contrib/dev/acpica -I../../../contrib/altq -I../../../contrib/ipfilter -I../../../contrib/pf -I../../../contrib/dev/ath -I../../../contrib/dev/ath/freebsd -I../../../contrib/ngatm -D_KERNEL -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000  -mno-align-long-strings -mpreferred-stack-boundary=2 -ffreestanding -Werror  vers.c
linking kernel
if.o(.text+0x31d4): In function `if_setlladdr':
: undefined reference to `arp_ifinit'
if_rl.o(.text+0xf24): In function `rl_setmulti':
: undefined reference to `ether_crc32_be'
if_rl.o(.text+0x1666): In function `rl_attach':
: undefined reference to `ether_ifattach'
if_rl.o(.text+0x16a0): In function `rl_attach':
: undefined reference to `ether_ifdetach'
if_rl.o(.text+0x16e6): In function `rl_detach':
: undefined reference to `ether_ifdetach'
if_rl.o(.text+0x286: In function `rl_ioctl':
: undefined reference to `ether_ioctl'
*** Error code 1

Stop in /usr/src/sys/i386/compile/LinyinKernel.
You must build a kernel first.
*** Error code 1

Stop in /usr/src/sys/i386/compile/LinyinKernel.





内核配置文件:
#
# GENERIC -- Generic kernel configuration file for FreeBSD/i386
#
# For more information on this file, please read the handbook section on
# Kernel Configuration Files:
#
#    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
#
# The handbook is also available locally in /usr/share/doc/handbook
# if you've installed the doc distribution, otherwise always see the
# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
# latest information.
#
# An exhaustive list of options and more detailed explanations of the
# device lines is also present in the ../../conf/NOTES and NOTES files.
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.413.2.6.2.2 2004/10/24 18:02:52 scottl Exp $

machine                i386
#cpu                I486_CPU
#cpu                I586_CPU
cpu                I686_CPU
ident                LinyinKernel

# To statically compile in device wiring instead of /boot/device.hints
#hints                "GENERIC.hints"                # Default places to look for devices.

options         SCHED_4BSD                # 4BSD scheduler
options         INET                        # InterNETworking
#options         INET6                        # IPv6 communications protocols
options         FFS                        # Berkeley Fast Filesystem
options         SOFTUPDATES                # Enable FFS soft updates support
options         UFS_ACL                        # Support for access control lists
options         UFS_DIRHASH                # Improve performance on big directories
options         MD_ROOT                        # MD is a potential root device
#options         NFSCLIENT                # Network Filesystem Client
#options         NFSSERVER                # Network Filesystem Server
#options         NFS_ROOT                # NFS usable as /, requires NFSCLIENT
#options         MSDOSFS                        # MSDOS Filesystem
#options         CD9660                        # ISO 9660 Filesystem
options         PROCFS                        # Process filesystem (requires PSEUDOFS)
options         PSEUDOFS                # Pseudo-filesystem framework
#options         GEOM_GPT                # GUID Partition Tables.
options         COMPAT_43                # Compatible with BSD 4.3 [KEEP THIS!]
options         COMPAT_FREEBSD4                # Compatible with FreeBSD4
#options         SCSI_DELAY=15000        # Delay (in ms) before probing SCSI
options         KTRACE                        # ktrace(1) support
options         SYSVSHM                        # SYSV-style shared memory
options         SYSVMSG                        # SYSV-style message queues
options         SYSVSEM                        # SYSV-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         AHC_REG_PRETTY_PRINT        # Print register bitfields in debug
                                        # output.  Adds ~128k to driver.
options         AHD_REG_PRETTY_PRINT        # Print register bitfields in debug
                                        # output.  Adds ~215k to driver.
options         ADAPTIVE_GIANT                # Giant mutex is adaptive.

device                apic                # I/O APIC

# Bus support.  Do not remove isa, even if you have no isa slots
device                isa
device                eisa
device                pci
device                sound
device                snd_ich

#Boot is Color
options SC_NORM_ATTR=(FG_GREEN|BG_BLACK)
options SC_NORM_REV_ATTR=(FG_YELLOW|BG_GREEN)
options SC_KERNEL_CONS_ATTR=(FG_RED|BG_BLACK)
options SC_KERNEL_CONS_REV_ATTR=(FG_BLACK|BG_RED)
options VESA
options SC_PIXEL_MODE

# Floppy drives
#device                fdc

# ATA and ATAPI devices
device                ata
device                atadisk                # ATA disk drives
#device                ataraid                # ATA RAID drives
#device                atapicd                # ATAPI CDROM drives
#device                atapifd                # ATAPI floppy drives
#device                atapist                # ATAPI tape drives
#options         ATA_STATIC_ID        # Static device numbering

# SCSI Controllers
#device                ahb                # EISA AHA1742 family
#device                ahc                # AHA2940 and onboard AIC7xxx devices
#device                ahd                # AHA39320/29320 and onboard AIC79xx devices
#device                amd                # AMD 53C974 (Tekram DC-390(T))
#device                isp                # Qlogic family
#device                mpt                # LSI-Logic MPT-Fusion
#device                ncr                # NCR/Symbios Logic
#device                sym                # NCR/Symbios Logic (newer chipsets + those of `ncr')
#device                trm                # Tekram DC395U/UW/F DC315U adapters

#device                adv                # Advansys SCSI adapters
#device                adw                # Advansys wide SCSI adapters
#device                aha                # Adaptec 154x SCSI adapters
#device                aic                # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
#device                bt                # Buslogic/Mylex MultiMaster SCSI adapters

#device                ncv                # NCR 53C500
#device                nsp                # Workbit Ninja SCSI-3
#device                stg                # TMC 18C30/18C50

# SCSI peripherals
#device                scbus                # SCSI bus (required for SCSI)
#device                ch                # SCSI media changers
#device                da                # Direct Access (disks)
#device                sa                # Sequential Access (tape etc)
#device                cd                # CD
#device                pass                # Passthrough device (direct SCSI access)
#device                ses                # SCSI Environmental Services (and SAF-TE)

# RAID controllers interfaced to the SCSI subsystem
#device                amr                # AMI MegaRAID
#device                asr                # DPT SmartRAID V, VI and Adaptec SCSI RAID
#device                ciss                # Compaq Smart RAID 5*
#device                dpt                # DPT Smartcache III, IV - See NOTES for options
#device                hptmv                # Highpoint RocketRAID 182x
#device                iir                # Intel Integrated RAID
#device                ips                # IBM (Adaptec) ServeRAID
#device                mly                # Mylex AcceleRAID/eXtremeRAID
#device                twa                # 3ware 9000 series PATA/SATA RAID

# RAID controllers
#device                aac                # Adaptec FSA RAID
#device                aacp                # SCSI passthrough for aac (requires CAM)
#device                ida                # Compaq Smart RAID
#device                mlx                # Mylex DAC960 family
#device                pst                # Promise Supertrak SX6000
#device                twe                # 3ware ATA RAID

# atkbdc0 controls both the keyboard and the PS/2 mouse
device                atkbdc                # AT keyboard controller
device                atkbd                # AT keyboard
#device                psm                # PS/2 mouse

device                vga                # VGA video card driver

device                splash                # Splash screen and screen saver support

# syscons is the default console driver, resembling an SCO console
device                sc

# Enable this for the pcvt (VT220 compatible) console driver
#device                vt
#options         XSERVER                # support for X server on a vt console
#options         FAT_CURSOR        # start with block cursor

device                agp                # support several AGP chipsets

# Floating point support - do not disable.
device                npx

# Power management support (see NOTES for more options)
device                apm
# Add suspend/resume support for the i8254.
device                pmtimer

# PCCARD (PCMCIA) support
# PCMCIA and cardbus bridge support
device                cbb                # cardbus (yenta) bridge
device                pccard                # PC Card (16-bit) bus
device                cardbus                # CardBus (32-bit) bus

# Serial (COM) ports
#device                sio                # 8250, 16[45]50 based serial ports

# Parallel port
device                ppc
device                ppbus                # Parallel port bus (required)
#device                lpt                # Printer
#device                plip                # TCP/IP over parallel
#device                ppi                # Parallel port interface device
#device                vpo                # Requires scbus and da

# If you've got a "dumb" serial or parallel PCI card that is
# supported by the puc(4) glue driver, uncomment the following
# line to enable it (connects to the sio and/or ppc drivers):
#device         puc

# PCI Ethernet NICs.
#device                de                # DEC/Intel DC21x4x (``Tulip'')
#device                em                # Intel PRO/1000 adapter Gigabit Ethernet Card
#device                ixgb                # Intel PRO/10GbE Ethernet Card
#device                txp                # 3Com 3cR990 (``Typhoon'')
#device                vx                # 3Com 3c590, 3c595 (``Vortex'')

# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device                miibus                # MII bus support
#device                bfe                # Broadcom BCM440x 10/100 Ethernet
#device                bge                # Broadcom BCM570xx Gigabit Ethernet
#device                dc                # DEC/Intel 21143 and various workalikes
#device                fxp                # Intel EtherExpress PRO/100B (82557, 8255
#device                lge                # Level 1 LXT1001 gigabit ethernet
#device                nge                # NatSemi DP83820 gigabit ethernet
#device                pcn                # AMD Am79C97x PCI 10/100 (precedence over 'lnc')
#device                re                # RealTek 8139C+/8169/8169S/8110S
device                rl                # RealTek 8129/8139
#device                sf                # Adaptec AIC-6915 (``Starfire'')
#device                sis                # Silicon Integrated Systems SiS 900/SiS 7016
#device                sk                # SysKonnect SK-984x & SK-982x gigabit Ethernet
#device                ste                # Sundance ST201 (D-Link DFE-550TX)
#device                ti                # Alteon Networks Tigon I/II gigabit Ethernet
#device                tl                # Texas Instruments ThunderLAN
#device                tx                # SMC EtherPower II (83c170 ``EPIC'')
#device                vge                # VIA VT612x gigabit ethernet
#device                vr                # VIA Rhine, Rhine II
#device                wb                # Winbond W89C840F
#device                xl                # 3Com 3c90x (``Boomerang'', ``Cyclone'')

# ISA Ethernet NICs.  pccard NICs included.
#device                cs                # Crystal Semiconductor CS89x0 NIC
# 'device ed' requires 'device miibus'
#device                ed                # NE[12]000, SMC Ultra, 3c503, DS8390 cards
#device                ex                # Intel EtherExpress Pro/10 and Pro/10+
#device                ep                # Etherlink III based cards
#device                fe                # Fujitsu MB8696x based cards
#device                ie                # EtherExpress 8/16, 3C507, StarLAN 10 etc.
#device                lnc                # NE2100, NE32-VL Lance Ethernet cards
#device                sn                # SMC's 9000 series of Ethernet chips
#device                xe                # Xircom pccard Ethernet

# ISA devices that use the old ISA shims
#device                le

# Wireless NIC cards
#device                wlan                # 802.11 support
#device                an                # Aironet 4500/4800 802.11 wireless NICs.
#device                awi                # BayStack 660 and others
#device                wi                # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
#device                wl                # Older non 802.11 Wavelan wireless NIC.

# Pseudo devices.
device                loop                # Network loopback
device                mem                # Memory and kernel memory devices
device                io                # I/O device
#device                random                # Entropy device
#device                ether                # Ethernet support
#device                sl                # Kernel SLIP
#device                ppp                # Kernel PPP
#device                tun                # Packet tunnel.
#device                pty                # Pseudo-ttys (telnet etc)
#device                md                # Memory "disks"
#device                gif                # IPv6 and IPv4 tunneling
#device                faith                # IPv6-to-IPv4 relaying (translation)

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
#device                bpf                # Berkeley packet filter

# USB support
device                uhci                # UHCI PCI->;USB interface
device                ohci                # OHCI PCI->;USB interface
device                usb                # USB Bus (required)
#device                udbp                # USB Double Bulk Pipe devices
#device                ugen                # Generic
#device                uhid                # "Human Interface Devices"
device                ukbd                # Keyboard
#device                ulpt                # Printer
#device                umass                # Disks/Mass storage - Requires scbus and da
device                ums                # Mouse
#device                urio                # Diamond Rio 500 MP3 player
device                uscanner        # Scanners
# USB Ethernet, requires mii
#device                aue                # ADMtek USB Ethernet
#device                axe                # ASIX Electronics USB Ethernet
#device                cue                # CATC USB Ethernet
#device                kue                # Kawasaki LSI USB Ethernet
#device                rue                # RealTek RTL8150 USB Ethernet

# FireWire support
#device                firewire        # FireWire bus code
#device                sbp                # SCSI over FireWire (Requires scbus and da)
#device                fwe                # Ethernet over FireWire (non-standard!)
...全文
39 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
第一部分 综述 第1章 BSD系统的历史和目标 1.1 UNIX系统的历史 1.1.1 UNIX系统的起源 1.1.2 Research小组的UNIX系统 1.1.3 AT&T UNIX System III和System V 1.1.4 伯克利软件发布(BSD) 1.1.5 UNIX无处不在 1.2 BSD和其他系统 1.3 BSD向开放源代码的转变 1.3.1 Networking Release 2 1.3.2 法律诉讼 1.3.3 4.4BSD 1.3.4 4.4BSD-Lite Release 2 1.4 FreeBSD的开发模式 1.5 参考文献 第2章 FreeBSD设计概述 2.1 FreeBSD的功能和内核 2.2 内核结构 2.3 内核服务 2.4 进程管理 2.4.1 信号 2.4.2 进程组和会话 2.5 内存管理 2.5.1 BSD内存管理设计要点 2.5.2 内核中的内存管理 2.6 I/O系统 2.6.1 描述符与I/O 2.6.2 描述符管理 2.6.3 设备 2.6.4 套接口IPC 2.6.5 分散/聚集I/O 2.6.6 多文件系统支持 2.7 设备 2.8 文件系统 2.9 网络文件系统 2.10 终端 2.11 进程间通信 2.12 网络通信 2.13 网络实现 2.14 系统运行 2.15 复习题 2.16 参考文献 第3章 内核服务 3.1 内核结构 3.1.1 系统进程 3.1.2 系统入口 3.1.3 运行时刻的内核结构 3.1.4 内核的入口 3.1.5 从内核返回 3.2 系统调用 3.2.1 调用结果的处理 3.2.2 从系统调用返回 3.3 陷阱和中断 3.3.1 陷阱 3.3.2 I/O设备中断 3.3.3 软件中断 3.4 时钟中断 3.4.1 统计和进程调度 3.4.2 超时 3.5 内存管理服务 3.6 时间服务 3.6.1 真实时间 3.6.2 外部表示 3.6.3 调整时间 3.6.4 时间间隔 3.7 用户、用户组和其他身份标识 3.7.1 主机标识符 3.7.2 进程组和会话 3.8 资源服务 3.8.1 进程优先级 3.8.2 资源利用 3.8.3 资源限制 3.8.4 文件系统配额 3.9 系统运行服务 3.10 复习题 3.11 参考文献 第二部分 进程 第4章 进程管理 4.1 进程管理概述 4.1.1 多程序机制 4.1.2 调度 4.2 进程状态 4.2.1 进程结构 4.2.2 线程结构 4.3 上下文切换 4.3.1 线程状态 4.3.2 底层上下文切换 4.3.3 主动上下文切换 4.3.4 同步 4.3.5 互斥同步 4.3.6 锁管理器的锁 4.3.7 其他同步 4.4 线程调度 4.4.1 4.4BSD的调度程序 4.4.2 线程调度 4.4.3 线程优先级的计算 4.4.4 线程优先级例程 4.4.5 线程运行队列和上下文切换 4.4.6 ULE调度程序 4.5 创建进程 4.6 终止进程 4.7 信号 4.7.1 信号的历史 4.7.2 发送信号 4.7.3 接收信号 4.8 进程组和会话 4.8.1 会话 4.8.2 作业控制 4.9 监管环境 4.9.1 监管环境的语义 4.9.2 监管环境的实现 4.9.3 监管环境的限制 4.10 进程的调试 4.11 复习题 4.12 参考文献 第5章 存储管理 5.1 术语 5.1.1 进程与内存 5.1.2 调页机制 5.1.3 替换算法 5.1.4 工作集模型 5.1.5 交换机制 5.1.6 虚拟内存的优点 5.1.7 虚拟内存的硬件要求 5.2 FreeBSD虚拟内存系统概述 5.3 内核的存储管理 5.3.1 内核映射和子映射 5.3.2 内核地址空间的分配 5.3.3 内核的存储分配程序 5.3.4 内核的区域存储分配程序 5.4 进程独立拥有的资源 5.4.1 FreeBSD的进程虚拟地址空间 5.4.2 缺页处理 5.4.3 映射到对象 5.4.4 对象 5.4.5 对象到页面 5.5 共享存储 5.5.1 mmap模型 5.5.2 共享映射 5.5.3 私有映射 5.5.4 压缩影子链 5.5.5 私有快照 5.6 创建新进程 5.6.1 保留内核资源 5.6.2 复制用户地址空间 5.6.3 不通过复制创建新进程 5.7 执行一个文件 5.8 进程地址空间的操作 5.8.1 改变进程大小 5.8.2 文件映射 5.8.3 改变保护权限 5.9 终止进程 5.10 调页器接口 5.10.1 vnode调页器 5.10.2 设备调页器 5.10.3 物理内存调页器 5.10.4 交换调页器 5.11 调页机制 5.11.1 硬件高速缓存的设计 5.11.2 页面填色 5.12 页面替换 5.12.1 调页参数 5.12.2 pageout守护进程 5.12.3 交换机制 5.12.4 换入进程 5.13 可移植性 5.13.1 pmap模块的作用 5.13.2 初始化和启动 5.13.3 分配和释放映射 5.13.4 改变映射的访问和固定属性 5.13.5 管理页表的使用信息 5.13.6 初始化物理页面 5.13.7 管理内部数据结构 5.14 复习题 5.15 参考文献 第三部分 I/O系统 第6章 I/O系统概述 6.1 从用户到设备的I/O映射 6.1.1 设备驱动程序 6.1.2 I/O队列 6.1.3 中断处理 6.2 字符设备 6.2.1 原始设备和物理I/O 6.2.2 面向字符的设备 6.2.3 字符设备驱动程序的入口点 6.3 磁盘设备 6.3.1 块设备驱动程序的入口点 6.3.2 磁盘I/O请求的排序 6.3.3 磁盘标签 6.4 描述符的管理和服务 6.4.1 打开文件项 6.4.2 管理描述符 6.4.3 异步I/O 6.4.4 文件描述符的上锁机制 6.4.5 描述符上的多路I/O操作 6.4.6 select调用的实现 6.4.7 数据在内核中的转移 6.5 虚拟文件系统的接口 6.5.1 vnode的内容 6.5.2 对vnode的操作 6.5.3 路径名转换 6.5.4 文件系统的导出服务 6.6 与文件系统无关的服务 6.6.1 名字缓存 6.6.2 缓冲区管理 6.6.3 缓冲区管理的实现 6.7 可叠加的文件系统 6.7.1 简单的文件系统层 6.7.2 联合安装的文件系统 6.7.3 其他文件系统 6.8 复习题 6.9 参考文献 第7章 设备 7.1 设备概述 7.1.1 PC的I/O体系结构 7.1.2 FreeBSD海量存储I/O子系统的结构 7.1.3 设备的命名和访问 7.2 GEOM层 7.2.1 术语和拓扑规则 7.2.2 改变拓扑 7.2.3 运行 7.2.4 拓扑的灵活性 7.3 CAM层 7.3.1 SCSI子系统 7.3.2 I/O请求通过CAM子系统的路径 7.4 ATA层 7.5 配置设备 7.5.1 识别设备 7.5.2 自动配置数据结构 7.5.3 资源管理 7.6 复习题 7.7 参考文献 第8章 本地文件系统 8.1 文件系统的分层管理 8.2 inode的结构 8.2.1 inode格式的变化 8.2.2 扩展属性 8.2.3 文件系统的新功能 8.2.4 文件标志 8.2.5 动态的inode 8.2.6 管理inode 8.3 命名 8.3.1 目录 8.3.2 在目录中查找名字 8.3.3 路径名转换 8.3.4 链接 8.4 配额 8.5 文件上锁 8.6 软更新 8.6.1 文件系统中的更新依赖 8.6.2 依赖关系的数据结构 8.6.3 跟踪位映射表的依赖关系 8.6.4 跟踪inode的依赖关系 8.6.5 跟踪直接块的依赖关系 8.6.6 跟踪间接块的依赖关系 8.6.7 跟踪新间接块的依赖关系 8.6.8 跟踪新目录项的依赖关系 8.6.9 跟踪新目录的依赖关系 8.6.10 跟踪删除目录项时的依赖关系 8.6.11 截短文件 8.6.12 回收文件和目录的inode节点 8.6.13 跟踪目录项重命名时的依赖关系 8.6.14 跟踪删除文件时的依赖关系 8.6.15 fsync对软更新的要求 8.6.16 删除文件时对软更新的要求 8.6.17 fsck对软更新的要求 8.6.18 软更新的性能 8.7 文件系统的快照 8.7.1 创建文件系统快照 8.7.2 维护文件系统快照 8.7.3 大型文件系统的快照 8.7.4 快照性能 8.7.5 后台fsck 8.7.6 用户可见的快照 8.7.7 动态的转储 8.8 本地文件库 8.8.1 文件库概述 8.8.2 用户的文件I/O 8.9 伯克利快速文件系统 8.9.1 伯克利快速文件系统的组成 8.9.2 引导块 8.9.3 优化存储空间利用率 8.9.4 读写文件 8.9.5 布局策略 8.9.6 分配机制 8.9.7 将块组成簇 8.9.8 基于扩展的分配 8.10 复习题 8.11 参考文献 第9章 网络文件系统 9.1 历史和概述 9.2 NFS的结构和操作 9.2.1 NFS协议 9.2.2 FreeBSD的NFS实现 9.2.3 客户机/服务器的交互操作 9.2.4 RPC的传输问题 9.2.5 安全问题 9.3 提高性能的技术 9.3.1 租约 9.3.2 崩溃恢复 9.4 复习题 9.5 参考文献 第10章 终端处理 10.1 终端处理模式 10.2 行规程 10.3 用户接口 10.4 tty结构 10.5 进程组、会话和终端控制 10.6 C-list 10.7 RS-232和调制解调器控制 10.8 终端操作 10.8.1 打开终端 10.8.2 输出到行规程 10.8.3 终端的输出 10.8.4 终端的输入 10.8.5 ioctl例程 10.8.6 调制解调器转换 10.8.7 关闭终端设备 10.9 其他行规程 10.10 复习题 10.11 参考文献 第四部分 进程间通信 第11章 进程间通信 11.1 进程间通信的模型 11.2 实现的结构和概述 11.3 内存管理 11.3.1 mbuf 11.3.2 存储管理算法 11.3.3 mbuf工具例程 11.4 数据结构 11.4.1 通信域 11.4.2 套接口 11.4.3 套接口地址 11.4.4 锁 11.5 建立连接 11.6 传送数据 11.6.1 发送数据 11.6.2 接收数据 11.7 关闭套接口 11.8 本地进程间通信 11.8.1 信号量 11.8.2 消息队列 11.8.3 共享内存 11.9 复习题 11.10 参考文献 第12章 网络通信 12.1 内部结构 12.1.1 数据流 12.1.2 通信协议 12.1.3 网络接口 12.2 套接口到协议的接口 12.2.1 协议的用户请求例程 12.2.2 协议的控制输出例程 12.3 协议到协议的接口 12.3.1 pr_output 12.3.2 pr_input 12.3.3 pr_ctlinput 12.4 协议和网络的接口 12.4.1 发送数据包 12.4.2 接收数据包 12.5 路由选择 12.5.1 内核路由选择表 12.5.2 路由选择查找 12.5.3 路由选择重定向 12.5.4 路由选择表接口 12.5.5 用户级的路由选择策略 12.5.6 用户级路由选择接口:路由选择套接口 12.6 缓冲和拥塞控制 12.6.1 协议缓冲策略 12.6.2 队列限制 12.7 原始套接口 12.7.1 控制块 12.7.2 输入处理 12.7.3 输出处理 12.8 网络子系统的其他主题 12.8.1 带外数据 12.8.2 地址解析协议 12.9 复习题 12.10 参考文献 第13章 网络协议 13.1 IPv4网络协议 13.1.1 IPv4地址 13.1.2 广播地址 13.1.3 组播 13.1.4 端口与关联 13.1.5 协议控制块 13.2 UDP协议 13.2.1 初始化 13.2.2 输出 13.2.3 输入 13.2.4 控制操作 13.3 Internet协议(IP) 13.3.1 输出 13.3.2 输入 13.3.3 转发 13.4 TCP协议 13.4.1 TCP连接状态 13.4.2 序号变量 13.5 TCP算法 13.5.1 定时器 13.5.2 往返时间的估计 13.5.3 建立连接 13.5.4 SYN缓存 13.5.5 关闭连接 13.6 TCP输入处理 13.7 TCP输出处理 13.7.1 发送数据 13.7.2 避免糊涂窗口综合症 13.7.3 避免小数据包 13.7.4 确认延迟和窗口更新 13.7.5 重发状态 13.7.6 慢启动 13.7.7 源拥塞的处理 13.7.8 缓冲与窗口大小分配 13.7.9 使用慢启动避免拥塞 13.7.10 快速重发 13.8 ICMP协议 13.9 IPv6 13.9.1 IPv6地址 13.9.2 IPv6数据包格式 13.9.3 套接口API的调整 13.9.4 自动配置 13.10 安全 13.10.1 IPSec概述 13.10.2 安全协议 13.10.3 密钥管理 13.10.4 IPSec实现 13.10.5 密码子系统 13.11 复习题 13.12 参考文献 第五部分 系统运行 第14章 启动和关机 14.1 概述 14.2 引导 14.3 初始化内核 14.4 初始化内核模块 14.4.1 基本服务 14.4.2 初始化内核线程 14.4.3 初始化设备模块 14.4.4 内核的可加载模块 14.4.5 启动进程间通信 14.4.6 启动内核线程 14.5 用户级初始化 14.5.1 /sbin/init 14.5.2 系统的启动脚本 14.5.3 /usr/libexec/getty 14.5.4 /usr/bin/login 14.6 系统运行 14.6.1 内核的配置 14.6.2 系统关机与自动重启 14.6.3 系统调试 14.6.4 同内核传递信息 14.7 复习题 14.8 参考文献 术语表
目录 第I部分. 基础 第1章 介绍 1.1 在 FreeBSD 上进行开发 1.2 BSD 理念 1.3 指导性架构设计原则 1.4 /usr/src的层次结构 第2章 编程工具 2.1 概述 2.2 介绍 2.3 编程初步 2.4 用 cc 编译 2.5 Make 2.6 调试 2.7 使用 Emacs 作为开发环境 2.8 补充阅读 第3章 安全的编程 3.1 提要 3.2 安全的设计方法 3.3 缓冲区溢出 3.4 SetUID 问题 3.5 限制你的程序环境 3.6 信任 3.7 竞态条件 第4章 本地化与国际化 - L10N 和 I18N 4.1 编写适应国际化的应用程序 4.2 使用 POSIX.1 本地语言支持 (NLS) 的本地化消息 第5章 源代码树指南和维护发展策略 5.1 Makefile 中的 MAINTAINER 5.2 第三方软件 5.3 妨碍性的 (Encumbered) 文件 5.4 共享库 第6章 回归与性能测试 6.1. 微性能测试列表 第II部分. 进程间通信 第7章 套接字 7.1 概述 7.2 联网和多样性 7.3 协议 7.4 套接字模型 7.5 重要的套接字函数 7.6 辅助函数 7.7 并发服务器 第8章 IPv6内部 8.1 IPv6/IPsec的实现 第III部分. 内核 第9章 联编并安装 FreeBSD 内核 9.1 以 “传统” 方式联编内核 9.2 以 “新” 方式联编内核 第10章 调试内核 10.1 如何将内核的崩溃转存数据保存成文件 10.2 使用 kgdb 调试内核的崩溃转存 10.3 使用 DDD 调试崩溃转存文件 10.4 使用 DDB 进行在线内核调试 10.5 使用远程 GDB 进行联机内核调试 10.6 如何调试控制台驱动 10.7 调试死锁 10.8 用于调试的内核选项术语表 第IV部分. 系统结构 第11章 x86 汇编语言 11.1 概述 11.2 工具 11.3 系统调用 11.4 返回值 11.5 建立可移植的代码 11.6 编写第一个程序 11.7 编写 UNIX® 过滤程序 11.8 缓存 I/O 11.9 命令行参数 11.10 UNIX® 中的环境 11.11 文件处理 11.12 One-Pointed Mind 11.13 Using the FPU 11.14 忠告 11.15 致谢

477

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧