Solaris系统设备映射一览

本文介绍如何从设备的完全限定物理路径名中识别插槽编号,适用于不同架构的系统。通过解析设备路径,如/sbus@1f,0/esp@0,3000/sd@2,0:a,可以确定设备的具体位置。文章还提供了多个实例帮助理解,并列举了常用设备驱动程序。
Introduction

Managing I/O devices and disks can be very challenging, especially when configurations are complex. This guide explains how to identify slot numbers from a device's fully qualified physical path name.

Every hardware device on a system is identified with its full device name, also called the physical device name. Physical device files are found in the /devices directory. The full device pathname identifies a device in terms of its location in the device tree by identifying a series of node names separated by slashes, with the root indicated by a leading slash. Each node name in the full device pathname has the following form: driver-name@unit-address:device arguments.

driver-name identifies the device name; @unit-address is the physical address of the device in the address space of the parent; and :device arguments defines additional information regarding the device software.

If you match the devices to the driver names (which will be part of the physical path) you will know what type of device you are looking at.

Description

The following sections describe slot numbers for different system architecture.

Table 1 provides the descriptions of commonly used device drivers:

Device DriverDescription
fasFast/wide SCSI controller
hmeFast (10/100 Mb/sec) Ethernet
ispDifferential SCSI controllers and the SunSwift card
glmUltraSCSI controllers
scsiSmall Computer Serial Interface (SCSI) devices
sfsoc+ or socal Fiber Channel Arbitrated Loop (FCAL)
socSPARC Storage Array (SSA) controllers
socalSerial optical controllers for FCAL (soc+)

Table 1: Commonly used device drivers
Enterprise 3500-6500 servers

The physical path can help you locate a particular device. For example, the full device address

/sbus@1f,0/esp@0,3000/sd@2,0:a

represents a slice of a SCSI disk drive on a SPARC system. It is interpreted from left to right as a device attached to the sbus with a main system bus address of 1f,0; an esp device, a SCSI bus attached at sbus slot 0, offset 3000; and an sd device with a SCSI bus target of 2, a logical unit of 0, and an argument of a, which represents slice a of the disk.

For Sun Fire, there are two sbuses per board, 0 and 1 on board 0, 2 and 3 on board 1, etc. The sbus is in hex and the slot # in decimal. There are 3 slots per board, 0, 1 and 2. Slot d is the onboard slot. Slots go from left to right (they are numbered so it's easy). There are two channels per slot, 0 and 1. Channels go from right to left. For example:

Searching for disks...done

AVAILABLE DISK SELECTIONS:
0. c2t96d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
/sbus@17,0/SUNW,socal@d,10000/sf@0,0/ssd@w210000203719af3e,0
1. c2t101d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
/sbus@17,0/SUNW,socal@d,10000/sf@0,0/ssd@w210000203719b0e8,0
2. c2t106d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
/sbus@17,0/SUNW,socal@d,10000/sf@0,0/ssd@w210000203719aded,0
3. c2t112d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
/sbus@17,0/SUNW,socal@d,10000/sf@0,0/ssd@w210000203719ad78,0
4. c2t115d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
/sbus@17,0/SUNW,socal@d,10000/sf@0,0/ssd@w210000203719ad8e,0
5. c2t118d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
/sbus@17,0/SUNW,socal@d,10000/sf@0,0/ssd@w210000203719b021,0
6. c2t122d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
/sbus@17,0/SUNW,socal@d,10000/sf@0,0/ssd@w210000203719aea6,0
Specify disk (enter its number):

The above format output shows one (they're all c2) photon (because it's using socal/sf/ssd drivers) on sbus@17, which means it's on board 11 (17 hex = 23 decimal. Round odd numbers down one = 22 and divide by 2 = 11). It is connected to the onboard socal (socal@d,10000) and must be on the right channel (sf@0,0).

So, if the device path reads:

0. c2t96d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
/sbus@7,0/SUNW,socal@1,0/sf@1,0/ssd@w210000203719af3e,0

then the device is on sbus@7 = board 3 (7 hex = 7 decimal, round down to 6 and divide by 2 = 3), in slot 1 (socal@1.0) in channel 1 (left channel, sf@1,0).

With this information you can track the device by tracing the wire. Table 2, which makes the same calculation a lot easier to interpret, describes the slot and sbus slot assignments and their locations (front or back of the system).

FrontBack
Board slotsbus@sbus@Board slotsbus@sbus@
001123
245367
4895AB
6CD7EF
8101191213
101415111617
121819131A1B
141C1D151E1F

Table 2: 3500-6500 slot assignments

Refer to the preceding example and Table 2. You will see that sbus@17 means it is in board slot 11 at the back of the system.

Note: The Sun Enterprise 3x00 has board slots in the back of the system only (the internal disks are located on the front). The Sun Enterprise 4x00, 5x00, and 6x00 have board slots in the front and back.

Note: sf@0 is the GBIC port on the right and sf@1 is the GBIC port on the left on a soc+ I/O board.

Midrange 250 and 450 Servers

The Sun workgroup server product series slot assignments for Sun Enterprise 250 and 450 are shown in this section.

Consider the following device path:

/pci@6,4000/scsi@2

As shown in Table 3, this device path represents the card occupying slot 3. In this table, Device is the device driver name of the card occupying the slot (for example, scsi).

Full Device Path NamePCI Slot/Device
/pci@1f,4000/device@410
/pci@4,4000/device@29
/pci@4,4000/device@38
/pci@4,4000/device@47
/pci@4,2000/device@16
/pci@1f,2000/device@15
/pci@6,2000/device@14
/pci@6,4000/device@23
/pci@6,4000/device@32
/pci@6,4000/device@41
/pci@1f,4000/scsi@2/sd@6,0Internal CD-ROM
/pci@1f,4000/scsi@2/deviceExternal SCSI port

Table 3: 450 PCI Slot Assignments

The device path /pci@1f,4000/scsi@3 may be reported. This device path references the disk controller built onto the system board that controls the first four internal disk slots in a Sun Enterprise 450 - the bottom four slots.

The device path /pci@1f,4000/scsi@2 may be reported. This device path references the controller built onto the system board for the internal CD-ROM or tape drive, as well as the onboard SCSI port on the system board.

Table 4 shows the Sun Enterprise 250 PCI Slot Assignments.

PCI Slot/DeviceDevice Path
PCI Slot #0/pci@1f,4000/device@5
PCI Slot #1/pci@1f,4000/device@4
PCI Slot #2/pci@1f,4000/device@2
PCI Slot #3/pci@1f,2000/device@1
Internal Disk Slot #0/pci@1f,4000/scsi@3/sd@0
Internal Disk Slot #1pci@1f,4000/scsi@3/sd@8
Internal Disk Slot #2pci@1f,4000/scsi@3/sd@9
Internal Disk Slot #3/pci@1f,4000/scsi@3/sd@a
Internal Disk Slot #4/pci@1f,4000/scsi@3/sd@b
Internal Disk Slot #5/pci@1f,4000/scsi@3/sd@c
Internal CD-ROM/pci@1f,4000/scsi@3/sd@6,0
External SCSI Port/pci@1f,4000/scsi@3,1/device

Table 4: 250 PCI Slot Assignments
Enterprise 3800-6800 Servers

There are two types of I/O boards - PCI and cPCI. PCI has 8 slots and cPCI has 6 slots. 4800/4810/6800 do not support cPCI cards at this time. In 3800, IB6 and IB8 are located side by side on the front of the box. In 4800, IB6 is at the bottom and IB8 is at the top at the back of the box. In 4810, both of the boards are located in the front. In 6800, they are located as:

IB9     IB8
IB7     IB6

3800-6800: CPU/Memory Boards

Depending on the type, Sun Fire systems can have up to 6 CPU boards. Each CPU board can have up to 4 processors. Processors with Agent IDs (AID) 0-3 reside on board C0, 4-7 on board C1, 8-11 on board C2, and so on. Refer to Table 5 for AID allocation.

Using this allocation, there are up to 4 CPU instances P0-P3 on each board. There are up to 4 banks of memory per CPU board. Each bank is controlled by one memory controller (MMU). The memory controller is co-packaged with its processor. Thus, AID for the memory controller is the same as its processor AID but with a different offset. The offset is 0 for processors and 400000 for memory.

BoardP3P2P1P0
0CPU 3CPU 2CPU 1CPU 0
1CPU 7CPU 6CPU 5CPU 4
2CPU 11CPU 10CPU 9CPU 8
3CPU 15CPU 14CPU 13CPU 12
4CPU 19CPU 18CPU 17CPU 16
5CPU 23CPU 22CPU 21CPU 20

Table 5: AID Allocation
Example for CPU module

To determine the physical location of CPU modules, consider the following full device path name

/ssm@0,0/SUNW,UltraSPARC-III@b,0

Here, 0 is the Node ID and CPU AID is B. Now

  • Divide processor Agent ID by 4.

    hex: b/4 = 2.xx
    dec: 11/4 = 2.xx

    The whole number represents the CPU board number(slot number), C2 in this case.

  • The remainder of the division represents processor instance number (0-3) on the CPU board.

    In this example, the remainder is 3, indicating CPU P3.
Example for memory controller

To determine physical location of memory controllers, consider the following full device path name

/ssm@0,0/SUNW,memory-controller@b,400000

Here Node ID is 0, Memory AID is B and offset is 400000. The same formula applies to memory components. As in the CPU case, memory resides on board C2.

3800-6800: IO Boards

There are up to 4 I/O boards in a system, each hosting 2 Schizo's. Each Schizo has two bus sides, A and B. Agent ID 25 and 26 are located on IB6, 27 and 28 on IB7, and so on. The node ID for Sun Fire is always zero (ssm@0,0). Sun Fireplane Agent IDs (AID) range from 0-31 (0-1f, hex). CPU AIDs range from 0-23 (0-17, hex). Schizo AIDs range from 24-31 (18-1f, hex).

BoardSchizo AIDSchizo AID
62524
72726
82928
93130

Table 6: Sun Fireplane Agent ID (AID) allocation for Schizo IO

There are 2 types of IO boards, PCI and cPCI. The PCI board types have 8 slots. A cPCI may have 4 or 6 slots. Tables 5, 6, and 7 describe PCI and cPCI IO board topology.

Even/Odd AIDOffsetDevice #Slot assignment
16000001Slot 7 is Schizo1/A
17000003Slot 6 is Schizo1/B
17000002Slot 5 is Schizo1/B
17000001Slot 4 is Schizo1/B
06000001Slot 3 is Schizo0/A
07000003Slot 2 is Schizo0/B
07000002Slot 1 is Schizo0/B
07000001Slot 0 is Schizo0/B

Table 7: PCI IO Board Topology


Even/Odd AIDOffsetDevice #Slot assignment
06000001Slot 0 is Schizo0/A
16000001Slot 1 is Schizo1/A
07000001Slot 2 is Schizo0/B
17000001Slot 3 is Schizo1/B

Table 8: cPCI IO Board Topology for 4 slots


Even/Odd AIDOffsetDevice #Slot assignment
06000001Slot 0 is Schizo0/A
17000001Slot 1 is Schizo1/A
07000001Slot 2 is Schizo0/B (shared)
07000002Slot 3 is Schizo0/B (shared)
17000001Slot 4 is Schizo1/B (shared)
07000002Slot 3 is Schizo0/B (shared)

Table 9: cPCI IO Board Topology for 6 slots


    IB7, IB9        IB6, IB8    
07
16
25
34
43
52
61
70

Table 10: Physical Slot location for PCI IO boards

Example for IO boards

PCI Example 1

To determine physical location of I/O devices, consider the following full device pathname:

/ssm@0,0/pci@19,700000/pci@3/SUNW,isptwo@4/sd (block)

Where
Node ID is 0
Schizo AID is 19
Device# is 3

To locate the IO board number, divide the Schizo ID by 2 and subtract 6.

Hex: (19/2)- 6 = 6.8

This means the device resides on the I/O board in slot 6 (IB6). The fact that the result has a fraction indicates that this is an odd AID. An odd AID indicates Schizo 1 and an even AID indicates Schizo 0 of IB6. Alternatively, you can look up the AID in Table 5.

To identify the slot number of IB6 in which this device is installed, use Table 7 for PCI IO topology. From the device path, AID is odd (19), offset = 700000, and device # = 3. This device is in slot 6 of IO board IB6.

PCI Example 2

(from show-devs output):
/ssm@0,0/pci@1d,600000/scsi@1,1 (scsi-2)
/ssm@0,0/pci@1d,600000/scsi@1,1/tape (byte)
/ssm@0,0/pci@1d,600000/scsi@1,1/disk (block)
/ssm@0,0/pci@1d,600000/scsi@1 (scsi-2)
/ssm@0,0/pci@1d,600000/scsi@1/tape (byte)
/ssm@0,0/pci@1d,600000/scsi@1/disk (block)

Where AID is 0
Offset is 600000
Device# is 1

All of these devices belong to the same slot since the AID, offset, and device numbers are identical.

AID=1d, offset=600000, device#=1
1d/2-6=8.8 => slot8

Using PCI topology Table 7, you can determine that this device is located at slot 7 of IO board IB8.

cPCI Example 1

Consider this full device pathname

/ssm@0,0/pci@1c,700000/pci@1/SUNW,isptwo@4 (scsi)

Where
Node ID is 0
Schizo AID is 1c
Device# is 1

To find the IO board number, divide the AID 1c by 2 then subtract 6: 1c/2 - 6 = 8. This device is on IB8. Again, no fractions means Schizo 0 of IB8.

From the device path: AID=even (1c), offset = 700000, device# = 1. Using Table 7, you will find that this device is located at slot 2 of IB8.

Complete List of Software Utilities and Products

Utilities

Software ModuleProducts
formatAll
ssaadmSSA
luxadmSSA, A5x00, T3
cfgadmSCSI disks
Component ManagerA5x00, T3
StorToolsAll
rm6A3x00

Table 11 Software Utilities and Products  
【无人机】基于改进粒子群算法的无人机路径规划研究[和遗传算法、粒子群算法进行比较](Matlab代码实现)内容概要:本文围绕基于改进粒子群算法的无人机路径规划展开研究,重点探讨了在复杂环境中利用改进粒子群算法(PSO)实现无人机三维路径规划的方法,并将其与遗传算法(GA)、标准粒子群算法等传统优化算法进行对比分析。研究内容涵盖路径规划的多目标优化、避障策略、航路点约束以及算法收敛性和寻优能力的评估,所有实验均通过Matlab代码实现,提供了完整的仿真验证流程。文章还提到了多种智能优化算法在无人机路径规划中的应用比较,突出了改进PSO在收敛速度和全局寻优方面的优势。; 适合人群:具备一定Matlab编程基础和优化算法知识的研究生、科研人员及从事无人机路径规划、智能优化算法研究的相关技术人员。; 使用场景及目标:①用于无人机在复杂地形或动态环境下的三维路径规划仿真研究;②比较不同智能优化算法(如PSO、GA、蚁群算法、RRT等)在路径规划中的性能差异;③为多目标优化问题提供算法选型和改进思路。; 阅读建议:建议读者结合文中提供的Matlab代码进行实践操作,重点关注算法的参数设置、适应度函数设计及路径约束处理方式,同时可参考文中提到的多种算法对比思路,拓展到其他智能优化算法的研究与改进中。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值