嵌入式LAB 1:启动

Posted tanxiaxuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式LAB 1:启动相关的知识,希望对你有一定的参考价值。

嵌入式系统Lab 1 启动

1、 画出你所实际实施的连接示意图

pcduino连接示意图

2、给出实际拍摄的板卡连接照片

连接图片
近距离观看

3、给出所用的器材的列表

pcduino(含电源)、USB串口线、网线、SD卡、无线网卡
显示屏、鼠标、键盘、支持L2TP路由器、MacBook Air

4、给出得到的pcDuino启动时的输出文字,并逐行解释

U-Boot 2009.08 (Dec 25 2014 - 21:37:33)
# U-Boot: Universal Boot Loader, 负责嵌入式 Linux 系统的引导
CPU: Freescale i.MX6 family TO1.2 at 792 MHz
# CPU 型号
Thermal sensor with ratio = 172                                                 
# 温度传感器
Temperature:   35 C, calibration data 0x5404c169                                
# 温度刻度
mx6q pll1: 792MHz                                                               
# 处理器主频
mx6q pll2: 528MHz                                                               
# 处理器主频
mx6q pll3: 480MHz                                                               
# 处理器主频
mx6q pll8: 50MHz                                                                
# 处理器主频
ipg clock     : 66000000Hz                                                      
#ipg per clock : 66000000Hz
uart clock    : 80000000Hz                                                      
# Universal Asynchronous Receiver/Transmitter, 通用异步收发传输器
cspi clock    : 60000000Hz
ahb clock     : 132000000Hz                                                     
# Advanced High Performance Bus, 高级高性能总线
axi clock   : 264000000Hz                                                       
# Advanced eXtensible Interface, 一种总线协议
emi_slow clock: 132000000Hz
ddr clock     : 528000000Hz                                                     
# Double Data Rate, 双倍速率同步动态随机存储器
usdhc1 clock  : 198000000Hz
usdhc2 clock  : 198000000Hz
usdhc3 clock  : 198000000Hz
usdhc4 clock  : 198000000Hz
nfc clock     : 24000000Hz
Board: i.MX6Q-SABRESD: unknown-board Board: 0x63012 [POR ]                      
# 主板
Boot Device: MMC                                                                
# 引导设备
I2C:   ready                                                                    
# 集成电路总线
DRAM:   1 GB                                                                    
# Dynamic Random Access Memory, 动态随机存储器
MMC:   FSL_USDHC: 0,FSL_USDHC: 1,FSL_USDHC: 2,FSL_USDHC: 3                      
# Multimedia Card, 多媒体记忆卡
In:    serial                                                                   
# 正常输入
Out:   serial                                                                   
# 正常输出
Err:   serial                                                                   
# 错误信息, 3者都在串口上
config_ipu_di_clk: freq = 148500000.
wait for pll5 lock.
config_ipu_di_clk: set pll5 clock to 297000000Hz.
Found PFUZE100! deviceid=10,revid=11
Net:   got MAC address from IIM: 00:00:00:00:00:00                              
# 获得 MAC 地址
FEC0 [PRIME]
Hit any key to stop autoboot:  0                                                
# 在这里敲任意键可以停止自动引导, 0代表没有敲
mmc3(part 0) is current device                                                  
# 在MMC3上进行以下操作

MMC read: dev # 3, block # 2048, count 10240 ... 10240 blocks read: OK          
# 检查读写, 成功
## Booting kernel from Legacy Image at 10800000 ...                             
# 引导内核, 从一个固定的地址开始
  Image Name:   Linux-3.0.35-2666-gbdde708                                      
# 映像名
  Image Type:   ARM Linux Kernel Image (uncompressed)                           
# 映像类型
  Data Size:    4422312 Bytes =  4.2 MB                                         
# 数据大小
  Load Address: 10008000                                                        
# 装载地址
  Entry Point:  10008000                                                        
# 引导进入点
  Verifying Checksum ... OK                                                     
# 验证 Checksum, 成功
  Loading Kernel Image ... OK                                                   

# 装载内核映像
OK

Starting kernel ...                                                             
# 启动内核

Uncompressing Linux... done, booting the kernel.                                
# 内核的解压,引导,内核版本信息
Linux version 3.0.35-2666-gbdde708 (root@ubuntu) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #218 SMP PREEMPT Thu Dec 18 22:32:36 PST 2014
CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d                # CPU 信息
CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache               
# CPU 对缓存区的判别
Machine: Freescale i.MX 6Quad/DualLite/Solo Sabre-SD Board                      
# 主要硬件, 如处理器/主板等
Memory policy: ECC disabled, Data cache writealloc                              
# 内存策略
CPU identified as i.MX6Q, silicon rev 1.2                                       
# 具体的 CPU 识别
PERCPU: Embedded 7 pages/cpu @8c008000 s5472 r8192 d15008 u32768                # Per-CPU信息, Per-CPU 用来解决 CPU 之间同步问题
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 194560
Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait fec_mac=4c:53:1e:15:61:d4 video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 fbmem=28M
PID hash table entries: 4096 (order: 2, 16384 bytes)
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Memory: 512MB 256MB = 768MB Total                                               
# 内存大小
Memory: 764648k/764648k available, 283928k reserved, 0K highmem                 # 内存的状态
Virtual kernel memory layout:                                                   
# 虚拟内存的布局和大小
   vector  : 0xffff0000 - 0xffff1000   (   4 kB)
   fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
   DMA     : 0xf4600000 - 0xffe00000   ( 184 MB)
   vmalloc : 0xc0800000 - 0xf2000000   ( 792 MB)
   lowmem  : 0x80000000 - 0xc0000000   (1024 MB)
   pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)
   modules : 0x7f000000 - 0x7fe00000   (  14 MB)
     .init : 0x80008000 - 0x8003e000   ( 216 kB)
     .text : 0x8003e000 - 0x80b93ca8   (11608 kB)
     .data : 0x80b94000 - 0x80bff600   ( 430 kB)
      .bss : 0x80bff624 - 0x80c58d0c   ( 358 kB)
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1         # SLUB 分配器的参数, SLUB 是内核里面分配小内存的策略
Preemptible hierarchical RCU implementation.                                    # 可抢先式内核
NR_IRQS:624                                                                     # IRQ 的最大数目
MXC GPIO hardware
sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655ms
arm_max_freq=1GHz
MXC_Early serial console at MMIO 0x2020000 (options '115200')
bootconsole [ttymxc0] enabled
Console: colour dummy device 80x30
Calibrating delay loop... 1581.05 BogoMIPS (lpj=7905280)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available
CPU1: Booted secondary processor
CPU2: Booted secondary processor
CPU3: Booted secondary processor
Brought up 4 CPUs
SMP: Total of 4 processors activated (6324.22 BogoMIPS).
print_constraints: dummy:
NET: Registered protocol family 16
print_constraints: vddpu: 725 <--> 1300 mV at 700 mV fast normal
print_constraints: vddcore: 725 <--> 1300 mV at 1150 mV fast normal
print_constraints: vddsoc: 725 <--> 1300 mV at 1200 mV fast normal
print_constraints: vdd2p5: 2000 <--> 2775 mV at 2400 mV fast normal
print_constraints: vdd1p1: 800 <--> 1400 mV at 1100 mV fast normal
print_constraints: vdd3p0: 2625 <--> 3400 mV at 3000 mV fast normal
hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.
hw-breakpoint: 1 breakpoint(s) reserved for watchpoint single-step.
hw-breakpoint: maximum watchpoint size is 4 bytes.
L310 cache controller enabled
l2x0: 16 ways, CACHE_ID 0x410000c7, AUX_CTRL 0x02070000, Cache size: 1048576 B
bio: create slab <bio-0> at 0
mxs-dma mxs-dma-apbh: initialized
print_constraints: SPKVDD: 4200 mV
print_constraints: vmmc: 3300 mV
SCSI subsystem initialized
spi_imx imx6q-ecspi.0: probed
spi_imx imx6q-ecspi.2: probed
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Freescale USB OTG Driver loaded, $Revision: 1.55 $

set the i2c clk:100000 Hz                                                       # 设置总线
mc_pfuze 1-0008: ID: 0,Full lay: 1 ,Metal lay: 1
mc_pfuze 1-0008: FAB: 0 ,FIN: 0
print_constraints: PFUZE100_SW1A: 300 <--> 1875 mV at 1300 mV
print_constraints: PFUZE100_SW1B: 300 <--> 1875 mV at 300 mV
print_constraints: PFUZE100_SW1C: 300 <--> 1875 mV at 1300 mV
print_constraints: PFUZE100_SW2: 800 <--> 3950 mV at 3300 mV
print_constraints: PFUZE100_SW3A: 400 <--> 1975 mV at 1500 mV
print_constraints: PFUZE100_SW3B: 400 <--> 1975 mV at 1500 mV
print_constraints: PFUZE100_SW4: 800 <--> 3950 mV at 3150 mV
print_constraints: PFUZE100_SWBST: 5000 <--> 5150 mV at 5000 mV
print_constraints: PFUZE100_VSNVS: 1200 <--> 3000 mV at 1800 mV
print_constraints: PFUZE100_VREFDDR: at 750 mV
print_constraints: PFUZE100_VGEN1: 800 <--> 1550 mV at 1500 mV
print_constraints: PFUZE100_VGEN2: 800 <--> 1550 mV at 1500 mV
print_constraints: PFUZE100_VGEN3: 1800 <--> 3300 mV at 2800 mV
print_constraints: PFUZE100_VGEN4: 1800 <--> 3300 mV at 1800 mV
print_constraints: PFUZE100_VGEN5: 1800 <--> 3300 mV at 3000 mV
print_constraints: PFUZE100_VGEN6: 1800 <--> 3300 mV at 3300 mV
imx-ipuv3 imx-ipuv3.0: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
imx-ipuv3 imx-ipuv3.1: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
mxc_mipi_csi2 mxc_mipi_csi2: i.MX MIPI CSI2 driver probed
mxc_mipi_csi2 mxc_mipi_csi2: i.MX MIPI CSI2 dphy version is 0x3130302a
MIPI CSI2 driver module loaded
Advanced Linux Sound Architecture Driver Version 1.0.24.
Bluetooth: Core ver 2.16
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
Bluetooth: L2CAP socket layer initialized
Bluetooth: SCO socket layer initialized
cfg80211: Calling CRDA to update world regulatory domain
i2c-core: driver [max17135] using legacy suspend method
i2c-core: driver [max17135] using legacy resume method
Switching to clocksource mxc_timer1
FS-Cache: Loaded
NET: Registered protocol family 2
IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
TCP established hash table entries: 131072 (order: 8, 1048576 bytes)
TCP bind hash table entries: 65536 (order: 7, 786432 bytes)
TCP: Hash tables configured (established 131072 bind 65536)
TCP reno registered
UDP hash table entries: 512 (order: 2, 16384 bytes)
UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
PMU: registered new PMU device of type 0
Static Power Management for Freescale i.MX6
wait mode is enabled for i.MX6
cpaddr = c0880000 suspend_iram_base=c0934000
PM driver module loaded
IMX usb wakeup probe
add wake up source irq 75
IMX usb wakeup probe
cpu regulator mode:ldo_bypass
_regulator_get: get() with no identifier
mx6_cpu_regulator_init: failed to get pu regulator
i.MXC CPU frequency driver
nfs4filelayout_init: NFSv4 File Layout Driver Registering...
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
NTFS driver 2.1.30 [Flags: R/W].                                                # ntfs 驱动
JFFS2 version 2.2. (NAND) ?? 2001-2006 Red Hat, Inc.
fuse init (API version 7.16)
msgmni has been set to 1493
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
mxc_mipi_dsi mxc_mipi_dsi: i.MX MIPI DSI driver probed
MIPI DSI driver module loaded
mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver hdmi
mxc_hdmi mxc_hdmi: Detected HDMI controller 0x13:0xa:0xa0:0xc1
fbcvt: 1920x1080@60: CVT Name - 2.073M9
imx-ipuv3 imx-ipuv3.0: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)
Console: switching to colour frame buffer device 240x67
mxc_sdc_fb mxc_sdc_fb.1: register mxc display driver ldb
_regulator_get: get() with no identifier
mxc_sdc_fb mxc_sdc_fb.2: register mxc display driver lcd
mxc_sdc_fb mxc_sdc_fb.2: ipu0-di0 already in use
mxc_sdc_fb: probe of mxc_sdc_fb.2 failed with error -16
mxc_sdc_fb mxc_sdc_fb.3: register mxc display driver ldb
imx-sdma imx-sdma: loaded firmware 1.1
imx-sdma imx-sdma: initialized
Serial: IMX driver                                                              # 串行驱动
imx-uart.2: ttymxc2 at MMIO 0x21ec000 (irq = 60) is a IMX
imx-uart.0: ttymxc0 at MMIO 0x2020000 (irq = 58) is a IMX
console [ttymxc0] enabled, bootconsole disabled
console [ttymxc0] enabled, bootconsole disabled
loop: module loaded                                                             # 载入环回设备模块
No sata disk.
GPMI NAND driver registered. (IMX)
vcan: Virtual CAN interface driver
CAN device driver interface
flexcan netdevice driver
FEC Ethernet Driver                                                             # 网驱
fec_enet_mii_bus: probed
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
fsl-ehci fsl-ehci.0: irq 75, io base 0x02184000
fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: Freescale On-Chip EHCI Host Controller
usb usb1: Manufacturer: Linux 3.0.35-2666-gbdde708 ehci_hcd
usb usb1: SerialNumber: fsl-ehci.0
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
add wake up source irq 72
fsl-ehci fsl-ehci.1: Freescale On-Chip EHCI Host Controller
fsl-ehci fsl-ehci.1: new USB bus registered, assigned bus number 2
fsl-ehci fsl-ehci.1: irq 72, io base 0x02184200
fsl-ehci fsl-ehci.1: USB 2.0 started, EHCI 1.00
usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: Freescale On-Chip EHCI Host Controller
usb usb2: Manufacturer: Linux 3.0.35-2666-gbdde708 ehci_hcd
usb usb2: SerialNumber: fsl-ehci.1
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
usbcore: registered new interface driver wusb-cbaf
usbcore: registered new interface driver cdc_acm
cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
usbcore: registered new interface driver uas
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core                                               
# 串口驱动
USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver ftdi_sio
ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
USB Serial support registered for Moschip 7840/7820 USB Serial Driver
mos7840: 1.3.2:Moschip 7840/7820 USB Serial Driver
usbcore: registered new interface driver mos7840
ARC USBOTG Device Controller driver (1 August 2005)
mousedev: PS/2 mouse device common for all mice
input: gpio-keys as /devices/platform/gpio-keys/input/input0
i2c-core: driver [isl29023] using legacy suspend method
i2c-core: driver [isl29023] using legacy resume method
snvs_rtc snvs_rtc.0: rtc core: registered snvs_rtc as rtc0
i2c /dev entries driver
Linux video capture interface: v2.00
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video16
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video17
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video18
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video19
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video20
i2c-core: driver [mag3110] using legacy suspend method
i2c-core: driver [mag3110] using legacy resume method
imx2-wdt imx2-wdt.0: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=1)
Bluetooth: Virtual HCI driver ver 1.3
Bluetooth: HCI UART driver ver 2.2
Bluetooth: HCIATH3K protocol initialized
Bluetooth: Generic Bluetooth USB driver ver 0.6
usbcore: registered new interface driver btusb
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
mmc0: SDHCI controller on platform [sdhci-esdhc-imx.3] using DMA
mmc1: SDHCI controller on platform [sdhci-esdhc-imx.1] using DMA
sdhci sdhci-esdhc-imx.2: no write-protect pin available!
mmc2: SDHCI controller on platform [sdhci-esdhc-imx.2] using DMA
mxc_vdoa mxc_vdoa: i.MX Video Data Order Adapter(VDOA) driver probed
VPU initialized
mxc_asrc registered
Galcore version 4.6.9.6622
Thermal calibration data is 0x5404c169
Thermal sensor with ratio = 172
Anatop Thermal registered as thermal_zone0
anatop_thermal_probe: default cooling device is cpufreq!
leds-gpio: probe of leds-gpio failed with error -16
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
usb 2-1: new high speed USB device number 2 using fsl-ehci
usbcore: registered new interface driver snd-usb-audio
mxc_hdmi_soc mxc_hdmi_soc.0: MXC HDMI Audio
Cirrus Logic CS42888 ALSA SoC Codec Driver
i2c-core: driver [cs42888] using legacy suspend method
i2c-core: driver [cs42888] using legacy resume method
mmc0: new high speed DDR MMC card at address 0001
mmcblk0: mmc0:0001 SEM08G 7.39 GiB
mmcblk0boot0: mmc0:0001 SEM08G partition 1 2.00 MiB
mmcblk0boot1: mmc0:0001 SEM08G partition 2 2.00 MiB
mmcblk0: p1
mmcblk0boot1: unknown partition table
mmcblk0boot0: unknown partition table
wm8962 0-001a: customer id 0 revision D
usb 2-1: New USB device found, idVendor=05e3, idProduct=0608
usb 2-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
usb 2-1: Product: USB2.0 Hub
hub 2-1:1.0: USB hub found
hub 2-1:1.0: 4 ports detected
input: WM8962 Beep Generator as 
/devices/platform/imx-i2c.0/i2c-0/0-001a/input/input1
asoc: wm8962 <-> imx-ssi.1 mapping ok
input: wm8962-audio DMIC as 
/devices/platform/soc-audio.5/sound/card0/input2
input: wm8962-audio Ext Spk as 
/devices/platform/soc-audio.5/sound/card0/input3
imx_3stack asoc driver
asoc: mxc-hdmi-soc <-> imx-hdmi-soc-dai.0 mapping ok
ALSA device list:
 #0: wm8962-audio
 #1: imx-hdmi-soc
NET: Registered protocol family 26
TCP cubic registered
NET: Registered protocol family 17
can: controller area network core (rev 20090105 abi 8)
NET: Registered protocol family 29
can: raw protocol (rev 20090105)
can: broadcast manager protocol (rev 20090105 t)
Bluetooth: RFCOMM TTY layer initialized                                         
# 蓝牙初始化
Bluetooth: RFCOMM socket layer initialized
Bluetooth: RFCOMM ver 1.11
Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Bluetooth: BNEP filters: protocol multicast
Bluetooth: HIDP (Human Interface Emulation) ver 1.2
NET: Registered protocol family 33
lib80211: common routines for IEEE802.11 drivers
Registering the dns_resolver key type
VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
Bus freq driver module loaded                                                   # 总线部分的驱动装载和启动
Bus freq driver Enabled
mxc_dvfs_core_probe
DVFS driver module loaded
kAFS: Red Hat AFS client v0.1 registering.
regulator_init_complete: PFUZE100_VGEN6: incomplete constraints, leaving on
regulator_init_complete: PFUZE100_VGEN3: incomplete constraints, leaving on
regulator_init_complete: PFUZE100_VGEN2: incomplete constraints, leaving on
regulator_init_complete: PFUZE100_VGEN1: incomplete constraints, leaving on
snvs_rtc snvs_rtc.0: setting system clock to 1970-01-01 00:00:28 UTC (28)
EXT3-fs: barriers not enabled
usb 2-1.1: new high speed USB device number 3 using fsl-ehci
usb 2-1.1: New USB device found, idVendor=0bda, idProduct=8179
usb 2-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 2-1.1: Product: 802.11n NIC
usb 2-1.1: Manufacturer: Realtek
usb 2-1.1: SerialNumber: 00E04C0001
kjournald starting.  Commit interval 5 seconds
EXT3-fs (mmcblk0p1): warning: maximal mount count reached, running e2fsck is recommended
EXT3-fs (mmcblk0p1): using internal journal
EXT3-fs (mmcblk0p1): recovery complete
EXT3-fs (mmcblk0p1): mounted filesystem with writeback data mode
VFS: Mounted root (ext3 filesystem) on device 179:1.                            # 虚拟文件系统的挂载
Freeing init memory: 216K                                                       # 释放初始化内存
ov5642_read_reg:write reg error:reg=300a
ov5640_read_reg:write reg error:reg=300a
ov5640_read_reg:write reg error:reg=300a

Last login: Thu Jan  1 08:10:45 CST 1970 from 192.168.1.2 on pts/1              # 登陆时间(linaro 系统时间)和登陆地址
Welcome to Linaro 12.11 (GNU/Linux 3.0.35-2666-gbdde708 armv7l)                 # 欢迎登陆,系统版本信息

   Documentation:  https://wiki.linaro.org/                                      
   # linaro 系统的文档

5、如何通过Linux获得硬件数据,截屏给出获得的硬件数据,如CPU型号、时钟频率、内存大小等

①输入vim /proc/cpuinfo
CPU信息

②输入vim /proc/meminfo
内存信息

③输入vmstat
虚拟内存信息

④输入观察硬盘信息
硬盘信息

⑤输入fdisk观察分区情况
分区信息

6、给出你的网络配置参数,截屏给出从pcDuino和PC两端得到的网络已连接的证明

网络配置参数如下
ifconfig
pcDuino Ping PC
acadia ping pc
PC Ping acadia
pc ping acadia

7、给出你的SSH配置文件,并解释其中内容

下面是位于pcduino的/etc/ssh/ssh_conf中的内容

# This is the ssh client system-wide configuration file.  See
# ssh_config(5) for more information.  This file provides defaults for
# users, and the values can be changed in per-user configuration files
# or on the command line.

# Configuration data is parsed as follows: // 配置选项生效的优先级
# 1. command line options // 命令行选项
# 2. user-specific file // 用户指定文件
# 3. system-wide file // 系统范围的文件# Any configuration value is only changed the first time it is set.
# Thus, host-specific definitions should be at the beginning of the
# configuration file, and defaults at the end.

# Site-wide defaults for some commonly used options.  For a comprehensive
# list of available options, their meanings and defaults, please see the
# ssh_config(5) man page.

Host *
选项“Host”只对能够匹配后面字串的计算机有效。“*”表示 所有的计算机。
#  ForwardAgent no
设置连接是否经过验证代理(如果存在)转发给远程计算机
#  ForwardX11 no
设置X11连接是否被自动重定向到安全的通道和显示集
#  ForwardX11Trusted yes
是否允许转发X11会话
#  RhostsRSAAuthentication no
设置是否使用RSA进行rhosts的安全验证
#  RSAAuthentication yes
设置是否使用RSA进行安全验证
#  PasswordAuthentication yes 
设置是否需要口令验证
#   HostbasedAuthentication no
#   GSSAPIKeyExchange no
#   GSSAPITrustDNS no
#   BatchMode no
#   CheckHostIP yes
#   AddressFamily any
#   ConnectTimeout 0
#   StrictHostKeyChecking ask
#   IdentityFile ~/.ssh/identity
#   IdentityFile ~/.ssh/id_rsa
#   IdentityFile ~/.ssh/id_dsa
#   Port 22 
sshd的监听端口号,默认为22
#   Protocol 2,1
#   Cipher 3des
#Ciphersaes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3d
es-cbc
#   MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160
#   EscapeChar ~
#   Tunnel no
#   TunnelDevice any:any
#   PermitLocalCommand no
#   VisualHostKey no
#   ProxyCommand ssh -q -W %h:%p gateway.example.com
    SendEnv LANG LC_*
    HashKnownHosts yes
    GSSAPIAuthentication yes
    GSSAPIDelegateCredentials no

8、存在多个登陆时,如何看到不同端口的登陆,给出截屏结果

PC上ssh pcduino
ssh

用w命令观察多个端口登陆的情况
端口情况

9、给出嵌入式板卡上的SAMBA配置文件内容,并逐行解释

输入vim /etc/samba/smb.conf可以观察到配置内容。

#======================= Global Settings =======================

[global]
samba服务器的全局设置,对整个服务器有效
## Browsing/Identification ###

# Change this to the workgroup/NT-domain name your Samba server will part of
   workgroup = WORKGROUP 
设定工作群组

# server string is the equivalent of the NT Description field
   server string = %h server (Samba, Ubuntu)
设定 Samba Server 的注释

# Windows Internet Name Serving Support Section:
# WINS Support - Tells the NMBD component of Samba to enable its WINS Server
#   wins support = no
设定samba server 是否想网络提供WINS服务,通常无特殊原因设为no。

# WINS Server - Tells the NMBD components of Samba to be a WINS Client
# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
;   wins server = w.x.y.z
设定samba server 是否要使用别台主机提供的WINS服务,通常无特殊原因设为no。

# This will prevent nmbd to search for NetBios names through DNS.
   dns proxy = no
设定dns代理


#### Networking ####
# The specific set of interfaces / networks to bind to
# This can be either the interface name or an IP address/netmask;
# interface names are normally preferred
;   interfaces = 127.0.0.0/8 eth0
说明了网络接口

# Only bind to the named interfaces and/or networks; you must use the
# 'interfaces' option above to use this.
# It is recommended that you enable this feature if your Samba machine is
# not protected by a firewall or is a firewall itself.  However, this
# option cannot handle dynamic or non-broadcast interfaces correctly.
;   bind interfaces only = yes
是否是连接已经命名的接口和网络

#### Debugging/Accounting ####

# This tells Samba to use a separate log file for each machine
# that connects
   log file = /var/log/samba/log.%m
设置日志

# Cap the size of the individual log files (in KiB).

……中间是各种设置

下面是自己定义的共享位置
[share]
      path = "/etc/share" 自己共享的路径
      available = yes 是否可以
      public = yes 是否公用
      browseable = yes 是否能够浏览
      valid users = public smbuser
      guest ok = yes 客人能够访问吗
      writable = yes 可写吗

10、给出用各种方式传递文件的过程,并从易用性、速度、安全等方面做比较

比较

11、给出你所选择的交叉编译环境的情况:来源、安装过程等

本机是MacBook,用的是X86指令集的指令集。我们的目标是在自己的笔记本上将程序编译成ARM上的可执行代码,因为pcDuino是ARM的。参考了相关的教程之后,我是这样设置我的X86->ARM环境的。

从Github(地址附在后面)下载ARM GNU Linux编译工具链。经过了漫长的下载过程之后,我们需要新建一个磁盘映像,目的是为了提供一个对大小写敏感的环境。

新建映像

新建完一个映像之后。我们把压缩包解压到新的映像里面。
解压

附工具链下载地址:
https://github.com/downloads/UnhandledException/ARMx/ARMx-2009q3-67.tar.bz2

12、给出交叉编译的程序的情况,并证明它是ARM/MIPS的可执行文件

首先自己写一个简单的程序。代码如下

#include <stdio.h>
int main() {
    printf(“Hello World!\\n”);
    return 0;
}

然后运用特别的gcc工具进行编译。
工具链

生成了a.out,然而在本地是不能够运行的。
本地不能运行

只有在arm的机子上,才能够正常运行。我们把这个二进制文件传送到pcduino上面,并尝试运行这个二进制文件。
acadia能运行

13、给出嵌入式板卡本机开发环境的情况,给出一或两种语言编程的例子和结果

简单地进行C语言的编程。如上。
C语言

Python也可以
Python

14、给出你尝试的远程图形桌面的方式:嵌入式板卡端的配置方法,PC端软件的获得,使用结果截屏等。

1、安装x11vnc 输入下面的命令:
 sudo apt-get install vino vinagre x11vnc
2、设置远程桌面登录时使用的密码,设置完后直接回车确认保存密码到     ~/.vnc/passwd  文件里。
输入下面的命令:
sudo x11vnc -storepasswd
3、设置x11vnc通用的密码存储位置
输入下面的命令:
sudo x11vnc -storepasswd in /etc/x11vnc.pass
4、将用户目录下的passwd文件内容copy到 /etc/x11vnc.pass下
输入下面的命令:
sudo cp .vnc/passwd /etc/x11vnc.pass

在pcduino上的配置。其中5900是默认的端口。
配置

PC端使用

桌面

以上是关于嵌入式LAB 1:启动的主要内容,如果未能解决你的问题,请参考以下文章

嵌入式LAB 6:Linux内核编译

嵌入式LAB 6:Linux内核编译

lab4:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

嵌入式LAB 2:ARM指令

嵌入式LAB 8:网络LED矩阵显示器

嵌入式LAB 8:网络LED矩阵显示器