# Report about VME-Download-Master-Board(VDMB)
### Discussion about Preboot eXecution Environment(PxE), pros/cons
### Setup
* Enable PxE-boot on Asus-X570-Series (Must be in BIOS)
* [Manual](https://dlcdnets.asus.com/pub/ASUS/mb/SocketAM4/PRIME_X570-P/E15829_PRIME_PRO_TUF_GAMING_X570_Series_BIOS_EM_WEB.pdf) Page 29 and 33
#### Pros
* Easy to sync multipile system-image between multipile board
#### Cons
* Since PxE dependent on DHCP server, if you has DHCP-Server in your network domain(192.168.*\<yyy\>*.*xxx*), then you *must* disable one of DHCP server, or binding 2 DHCP server as 1. Because **one network domain can't exist 2 DHCP server**
#### Conslution
Maybe our *Zybo Solution* seems good (?)
### Error Message `no matching host key type found. Their offer: ssh-rsa` when using `ssh` login VDMB
#### Purpose: Enable `SSH` of VDMB, for remote control conveniently
Enable just go to `/etc/sshd` to open(append) `port 22` on the VDMB, but encountered error when
```bash
[dewei@myPC ~]$ ssh dewei@ip-to-VDMB
Unable to negotiate with x.x.x.x port 22: no matching host key type found.
Their offer: ssh-rsa
```
Solution: [Refer to here](https://ttys3.dev/post/openssh-8-8-p1-no-matching-host-key-type-found-their-offer-ssh-rsa/)
Append following to `~/.ssh/config`
``` bash
HostKeyAlgorithms +ssh-rsa
PubkeyAcceptedKeyTypes +ssh-rsa
```
### Show CPU info, for select compile(GCC/Make, 32bits/64bits) tools
The CPU is [Intel Core Duo T2500](https://ark.intel.com/content/www/tw/zh/ark/products/27236/intel-core-duo-processor-t2500-2m-cache-2-00-ghz-667-mhz-fsb.html)
``` bash
[dewei@NTUSL6 ~]$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 14
model name : Intel(R) Core(TM) Duo CPU T2500 @ 2.00GHz
stepping : 12
cpu MHz : 2000.004
cache size : 2048 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon bts aperfmperf pni monitor vmx est tm2 xtpr pdcm dts
bogomips : 4000.08
clflush size : 64
cache_alignment : 64
address sizes : 32 bits physical, 32 bits virtual
power management:
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 14
model name : Intel(R) Core(TM) Duo CPU T2500 @ 2.00GHz
stepping : 12
cpu MHz : 2000.004
cache size : 2048 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
apicid : 1
initial apicid : 1
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon bts aperfmperf pni monitor vmx est tm2 xtpr pdcm dts
bogomips : 4000.08
clflush size : 64
cache_alignment : 64
address sizes : 32 bits physical, 32 bits virtual
power management:
```
### Compile on Host(your PC), not VDMB
Since CPU of VDMB is 32bits,
we can compile for it with 64bits-GCC,
even on the host(your PC)
How to do?
[Refer to here](https://stackoverflow.com/questions/3501878/force-gcc-to-compile-32-bit-programs-on-64-bit-platform): add `-m32` flag to `gcc` command
```bash
[dewei@myPC ~] gcc -m32 ....
```
###### tags: `TechReport` `DeWei`