当前位置: 首页 > news >正文

中建设计集团网站百度网站关键字搜索怎么做

中建设计集团网站,百度网站关键字搜索怎么做,唐山自助网站建设系统,顺德o2o网站建设目录前言前置知识ARM Versatile Express开发板简介ARM处理器家族简介安装qemu-system-arm安装交叉编译工具交叉编译ARM32 Linux内核交叉编译ARM32 Busybox使用busybox制作initramfs使用QEMU启动ARM32 Linux内核模拟vexpress-a9开发板模拟vexpress-a15开发板参考前言 本文介绍采… 目录前言前置知识ARM Versatile Express开发板简介ARM处理器家族简介安装qemu-system-arm安装交叉编译工具交叉编译ARM32 Linux内核交叉编译ARM32 Busybox使用busybox制作initramfs使用QEMU启动ARM32 Linux内核模拟vexpress-a9开发板模拟vexpress-a15开发板参考前言 本文介绍采用 qemu 模拟ARM-32bit开发板针对ARM-64bit会另起一篇介绍并启动ARM32 Linux内核。大致思路是 安装qemu-system-armARM-32bit模拟器安装arm-linux-gnueabiARM-32bit交叉编译器交叉编译linux源码得到ARM32 Linux内核镜像交叉编译busybox源码使用busybox制作initramfs最后使用qemu-system-arm启用ARM32 Linux内核 我的环境 宿主机硬件平台x86_64宿主机操作系统Ubuntu 20.04 Linux 5.4.0-139-genericQEMU版本qemu-4.2.1实验内核linux-5.19busybox版本busybox-1.35.0 前置知识 ARM Versatile Express开发板简介 本文将模拟ARM公司的vexpress开发板为例进行说明vexpress系列全称Versatile Express Family是ARM自己推出的开发板用于方便SOC厂商设计、验证和测试自己的芯片设计。在中国地区各厂商可以通过米尔科技获得ARM授权的正版ARM Versatile Express开发板。 该开发板支持那些外设不支持那些外设可以参考 Arm Versatile Express boards (vexpress-a9, vexpress-a15) 说明。 参考https://www.myir-tech.com/product/coretile.htm 处理器子板 Express 系列支持的 ARM 处理器有 Cortex-A15 MPCoreCortex-A9 MPCoreCortex-A5 MPCore ARM处理器家族简介 ARM处理器家族众多哪些是32bit哪些是64bit可参考 List_of_ARM_processors https://www.detailedpedia.com/wiki-List_of_ARM_processors 很多厂家使用ARM核设计SOC芯片这里罗列了很多可参考 List_of_products_using_ARM_processors https://www.detailedpedia.com/wiki-List_of_products_using_ARM_processors 安装qemu-system-arm 安装 $ sudo apt install qemu-system-arm查看版本号 $ qemu-system-arm --version QEMU emulator version 4.2.1 (Debian 1:4.2-3ubuntu6.24) Copyright (c) 2003-2019 Fabrice Bellard and the QEMU Project developersqemu内置了很多ARM开发板如官方文档中的 Arm System emulator 所述。可以使用以下命令查看 qemu 支持的 ARM 开发板本文将选择vexpress-a9和vexpress-a15开发板进行模拟 $ qemu-system-arm -M help Supported machines are: akita Sharp SL-C1000 (Akita) PDA (PXA270) ast2500-evb Aspeed AST2500 EVB (ARM1176) ast2600-evb Aspeed AST2600 EVB (Cortex A7) borzoi Sharp SL-C3100 (Borzoi) PDA (PXA270) canon-a1100 Canon PowerShot A1100 IS cheetah Palm Tungsten|E aka. Cheetah PDA (OMAP310) collie Sharp SL-5500 (Collie) PDA (SA-1110) connex Gumstix Connex (PXA255) cubieboard cubietech cubieboard (Cortex-A8) emcraft-sf2 SmartFusion2 SOM kit from Emcraft (M2S010) highbank Calxeda Highbank (ECX-1000) imx25-pdk ARM i.MX25 PDK board (ARM926) integratorcp ARM Integrator/CP (ARM926EJ-S) kzm ARM KZM Emulation Baseboard (ARM1136) lm3s6965evb Stellaris LM3S6965EVB lm3s811evb Stellaris LM3S811EVB mainstone Mainstone II (PXA27x) mcimx6ul-evk Freescale i.MX6UL Evaluation Kit (Cortex A7) mcimx7d-sabre Freescale i.MX7 DUAL SABRE (Cortex A7) microbit BBC micro:bit midway Calxeda Midway (ECX-2000) mps2-an385 ARM MPS2 with AN385 FPGA image for Cortex-M3 mps2-an505 ARM MPS2 with AN505 FPGA image for Cortex-M33 mps2-an511 ARM MPS2 with AN511 DesignStart FPGA image for Cortex-M3 mps2-an521 ARM MPS2 with AN521 FPGA image for dual Cortex-M33 musca-a ARM Musca-A board (dual Cortex-M33) musca-b1 ARM Musca-B1 board (dual Cortex-M33) musicpal Marvell 88w8618 / MusicPal (ARM926EJ-S) n800 Nokia N800 tablet aka. RX-34 (OMAP2420) n810 Nokia N810 tablet aka. RX-44 (OMAP2420) netduino2 Netduino 2 Machine none empty machine nuri Samsung NURI board (Exynos4210) palmetto-bmc OpenPOWER Palmetto BMC (ARM926EJ-S) raspi2 Raspberry Pi 2 realview-eb ARM RealView Emulation Baseboard (ARM926EJ-S) realview-eb-mpcore ARM RealView Emulation Baseboard (ARM11MPCore) realview-pb-a8 ARM RealView Platform Baseboard for Cortex-A8 realview-pbx-a9 ARM RealView Platform Baseboard Explore for Cortex-A9 romulus-bmc OpenPOWER Romulus BMC (ARM1176) sabrelite Freescale i.MX6 Quad SABRE Lite Board (Cortex A9) smdkc210 Samsung SMDKC210 board (Exynos4210) spitz Sharp SL-C3000 (Spitz) PDA (PXA270) swift-bmc OpenPOWER Swift BMC (ARM1176) sx1 Siemens SX1 (OMAP310) V2 sx1-v1 Siemens SX1 (OMAP310) V1 terrier Sharp SL-C3200 (Terrier) PDA (PXA270) tosa Sharp SL-6000 (Tosa) PDA (PXA255) verdex Gumstix Verdex (PXA270) versatileab ARM Versatile/AB (ARM926EJ-S) versatilepb ARM Versatile/PB (ARM926EJ-S) vexpress-a15 ARM Versatile Express for Cortex-A15 vexpress-a9 ARM Versatile Express for Cortex-A9 virt-2.10 QEMU 2.10 ARM Virtual Machine virt-2.11 QEMU 2.11 ARM Virtual Machine virt-2.12 QEMU 2.12 ARM Virtual Machine virt-2.6 QEMU 2.6 ARM Virtual Machine virt-2.7 QEMU 2.7 ARM Virtual Machine virt-2.8 QEMU 2.8 ARM Virtual Machine virt-2.9 QEMU 2.9 ARM Virtual Machine virt-3.0 QEMU 3.0 ARM Virtual Machine virt-3.1 QEMU 3.1 ARM Virtual Machine virt-4.0 QEMU 4.0 ARM Virtual Machine virt-4.1 QEMU 4.1 ARM Virtual Machine virt QEMU 4.2 ARM Virtual Machine (alias of virt-4.2) virt-4.2 QEMU 4.2 ARM Virtual Machine witherspoon-bmc OpenPOWER Witherspoon BMC (ARM1176) xilinx-zynq-a9 Xilinx Zynq Platform Baseboard for Cortex-A9 z2 Zipit Z2 (PXA27x)一个开发板往往支持不同cpu查看某个开发板以vexpress-a9为例支持的cpu列表 $ qemu-system-arm -M vexpress-a9 --cpu help Available CPUs:arm1026arm1136arm1136-r2arm1176arm11mpcorearm926arm946cortex-a15cortex-a7cortex-a8cortex-a9cortex-m0cortex-m3cortex-m33cortex-m4cortex-r5cortex-r5fmaxpxa250pxa255pxa260pxa261pxa262pxa270-a0pxa270-a1pxa270pxa270-b0pxa270-b1pxa270-c0pxa270-c5sa1100sa1110ti925t安装交叉编译工具 我们是在x86平台下进行的开发目标平台是arm架构需要安装交叉编译工具链。有关arm-linux的交叉编译器主要有 针对ARM-32bit的arm-linux-gnueabi和arm-linux-gnueabihf。针对ARM-64bit的aarch64-linux-gnu。 交叉编译器各版本的区别可参考《arm系列交叉编译器各版本区别.doc》。 这里只安装ARM-32bit的arm-linux-gnueabi版本 $ sudo apt install gcc-arm-linux-gnueabi查看版本 $ arm-linux-gnueabi-gcc --version arm-linux-gnueabi-gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0 Copyright (C) 2019 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.交叉编译ARM32 Linux内核 $ mkdir ~/kvm-arm $ cd ~/kvm-arm/ $ wget https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/snapshot/linux-5.19.tar.gz $ tar -xf linux-5.19.tar.gz $ cd linux-5.19/ $ make ARCHarm CROSS_COMPILEarm-linux-gnueabi- Obuild vexpress_defconfig $ make ARCHarm CROSS_COMPILEarm-linux-gnueabi- Obuild -j8说明 ARCH指定目标CPU架构CROSS_COMPILE指定交叉编译器ObuildO是Out的缩写表示编译输出文件放在build目录不跟源码混在一起保持源码的整洁性。要模拟vexpress开发板所以选择vexpress_defconfig配置文件对应原厂默认内核配置文件arch/arm/configs/vexpress_defconfigmake 的过程会根据原厂默认配置文件生成可直接用于编译的内核配置文件.config。 看到以下日志就表示编译成功 Kernel: arch/arm/boot/zImage is ready查看下内核编译出来的原始内核文件vmlinux是ARM 32-bit版本。 $ file build/vmlinux build/vmlinux: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, BuildID[sha1]7c27ffc92ea9a8e90b84cd79b13b974857ca0b76, not strippedvmlinux不能直接引导Linux系统启动能引导Linux系统启动的是bzImage文件由vmlinux经objcopy处理后的二进制内核映像下文用到的内核镜像就是bzImage $ file build/arch/arm/boot/zImage build/arch/arm/boot/zImage: ARM OpenFirmware FORTH Dictionary, Text length: -509607936 bytes, Data length: -509607936 bytes, Text Relocation Table length: -369098747 bytes, Data Relocation Table length: 24061976 bytes, Entry Point: 0x00000000, BSS length: 5141592 bytes同时也会生成多个vexpress 开发板的设备树文件分别对应前文ARM Versatile Express提到的三种开发板 $ ls -ls build/arch/arm/boot/dts/vexpress*.dtb 20 -rw-rw-r-- 1 kaoya kaoya 18587 3月 1 22:38 build/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dtb 16 -rw-rw-r-- 1 kaoya kaoya 13024 3月 1 22:38 build/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dtb 16 -rw-rw-r-- 1 kaoya kaoya 12602 3月 1 22:38 build/arch/arm/boot/dts/vexpress-v2p-ca5s.dtb 16 -rw-rw-r-- 1 kaoya kaoya 14081 3月 1 22:38 build/arch/arm/boot/dts/vexpress-v2p-ca9.dtb交叉编译ARM32 Busybox $ mkdir ~/kvm-arm $ cd ~/kvm-arm/ $ wget https://busybox.net/downloads/busybox-1.35.0.tar.bz2 $ tar -xf busybox-1.35.0.tar.bz2 $ cd busybox-1.35.0/ $ make ARCHarm CROSS_COMPILEarm-linux-gnueabi- menuconfig# 修改配置选中如下项目静态编译 # Settings – Build Options – [*] Build static binaryno share libs# 反选如下项目否则后续qemu执行会提示 /bin/sh:cant access tty;job control turned off # Shells --- [ ] Job control$ make ARCHarm CROSS_COMPILEarm-linux-gnueabi- -j 8 $ make ARCHarm CROSS_COMPILEarm-linux-gnueabi- install装完后会 默认安装到源码目录的 _install/ 目录下 $ ls _install/ bin linuxrc sbin usr最关键的就是_install/bin/busybox其他都是链接文件。 $ file _install/bin/busybox _install/bin/busybox: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, BuildID[sha1]c0f615b2d6018047e05dc0e11b1ac9707ffb5a75, for GNU/Linux 3.2.0, stripped编译的过程中如果出现如下提示可忽略 Trying libraries: m resolv rtLibrary m is needed, cant exclude it (yet)Library resolv is needed, cant exclude it (yet)Library rt is not needed, excluding itLibrary m is needed, cant exclude it (yet)Library resolv is needed, cant exclude it (yet) Final link with: m resolv使用busybox制作initramfs 使用busybox快速制作initramfs。 创建虚拟rootfs中的inti启动脚本并赋予可执行权限 $ cd ~/kvm-arm/busybox-1.35.0/_install/ $ touch init $ chmod x init脚本内容 #!/bin/sh# 挂载一些必要的文件系统 mkdir /proc mount -t proc none /proc mkdir /sys mount -t sysfs none /sys mkdir /tmp mount -t tmpfs none /tmpecho echo Hello 32-bit ARM Linux# 显示开机消耗时间 echo This boot took $(cut -d -f1 /proc/uptime) seconds echo# 停留在控制台 exec /bin/sh制作initramfs文件它是多个文件通过cpio打包和gzip压缩的文件是一个cpio格式的内存文件系统。 $ find . -print0 | cpio --null -ov --formatnewc | gzip -9 ../initramfs.cpio.gz使用QEMU启动ARM32 Linux内核 ARM Linux内核镜像和initramfs都准备好就可以使用QEMU启动linux内核了。 模拟vexpress-a9开发板 vexpress-a9开发板其处理器是32-bit的Cortex-A94核。 以字符界面方式启动QEMU不启动图形界面同时日志输出到控制台 $ qemu-system-arm \-M vexpress-a9 \-cpu cortex-a9 \-smp 4 \-m 1G \-nographic \-kernel ./linux-5.19/build/arch/arm/boot/zImage \-dtb ./linux-5.19/build/arch/arm/boot/dts/vexpress-v2p-ca9.dtb \-initrd ./busybox-1.35.0/initramfs.cpio.gz \-append init/init consolettyAMA0QEMU参数说明更多可参考Standard options -M指定模拟的开发板可通过qemu-system-arm -M help查看。-cpu指定模拟的cpu可通过qemu-system-arm -M vexpress-a9 --cpu help查看。-smp指定cpu核数量启动后可以使用nproc命令核对 vexpress-a9最多只支持4核可少不可多超过启动会报错。-m指定内存大小vexpress-a9最大支持1GB可少不可多 超过启动会报错启动后可以使用free -h命令核对。-kernel指定启动的内核镜像-initrd指定启动的内存文件系统-append传递给内核的启动参数启动后可使用cat /proc/cmdline命令核对。-nographic启动字符界面不启动图形界面输出重定向到宿主机命令行与参数 consolettyAMA0 组合使用 图形界面操作使用工具栏菜单即可字符界面操作使用快捷键如下所示更多可参考Keys in the character backend multiplexer C-a h print this help C-a x exit emulator C-a s save disk data back to file (if -snapshot) C-a t toggle console timestamps C-a b send break (magic sysrq) C-a c switch between console and monitor C-a C-a sends C-a 启动后核对下各种参数 # cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 0 (v7l) BogoMIPS : 915.86 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc09 CPU revision : 0processor : 1 model name : ARMv7 Processor rev 0 (v7l) BogoMIPS : 513.63 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc09 CPU revision : 0processor : 2 model name : ARMv7 Processor rev 0 (v7l) BogoMIPS : 915.86 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc09 CPU revision : 0processor : 3 model name : ARMv7 Processor rev 0 (v7l) BogoMIPS : 921.60 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc09 CPU revision : 0Hardware : ARM-Versatile Express Revision : 0000 Serial : 0000000000000000 / # / # free -htotal used free shared buff/cache available Mem: 1002.9M 11.2M 986.7M 2.0M 5.0M 982.2M Swap: 0 0 0 / # / # nproc 4启动如何有报错 pulseaudio: set_sink_input_volume() failed pulseaudio: Reason: Invalid argument pulseaudio: set_sink_input_mute() failed pulseaudio: Reason: Invalid argument这是有关pulseaudio音频服务的错可以忽略它。使用高版本的qemu如qemu-7.2.0就不会报这个错。 模拟vexpress-a15开发板 以字符界面方式启动QEMU不启动图形界面同时日志输出到控制台 $ qemu-system-arm \-M vexpress-a15 \-cpu cortex-a15 \-smp 2 \-m 2G \-nographic \-kernel ./linux-5.19/build/arch/arm/boot/zImage \-dtb ./linux-5.19/build/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dtb \-initrd ./busybox-1.35.0/initramfs.cpio.gz \-append init/init consolettyAMA0说明 vexpress-a15 的CPU数最多支持2核-smp配置超过启动不会报错但启动后只能看到2核。vexpress-a15 的内存最大支持2G-m配置超过启动不会报错但启动后只能看到2G内存。 以图形界面的方式启动QEMU # 日志输出和shell在窗口上 qemu-system-arm \-M vexpress-a15 \-cpu cortex-a15 \-smp 2 \-m 2G \-kernel ./linux-5.19/build/arch/arm/boot/zImage \-dtb ./linux-5.19/build/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dtb \-initrd ./busybox-1.35.0/initramfs.cpio.gz \-append init/init# 日志输出和shell在本地控制台 qemu-system-arm \-M vexpress-a15 \-cpu cortex-a15 \-smp 2 \-m 2G \-serial mon:stdio \-kernel ./linux-5.19/build/arch/arm/boot/zImage \-dtb ./linux-5.19/build/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dtb \-initrd ./busybox-1.35.0/initramfs.cpio.gz \-append init/init consolettyAMA0参考 Arm System emulator https://qemu.readthedocs.io/en/latest/system/target-arm.html Arm Versatile Express boards (vexpress-a9, vexpress-a15) https://www.qemu.org/docs/master/system/arm/vexpress.html List_of_products_using_ARM_processors https://www.detailedpedia.com/wiki-List_of_products_using_ARM_processors List_of_ARM_processors https://www.detailedpedia.com/wiki-List_of_ARM_processors Qemu使用及常见开发板的模拟 https://blog.csdn.net/weixin_45090728/article/details/124355432 qemu-system-aarch64使用和相关参数介绍 https://blog.csdn.net/u014100559/article/details/127260026
文章转载自:
http://www.morning.ksbmx.cn.gov.cn.ksbmx.cn
http://www.morning.ptxwg.cn.gov.cn.ptxwg.cn
http://www.morning.fhtbk.cn.gov.cn.fhtbk.cn
http://www.morning.ygztf.cn.gov.cn.ygztf.cn
http://www.morning.grbgn.cn.gov.cn.grbgn.cn
http://www.morning.hchrb.cn.gov.cn.hchrb.cn
http://www.morning.wnzgm.cn.gov.cn.wnzgm.cn
http://www.morning.jxgyg.cn.gov.cn.jxgyg.cn
http://www.morning.cfrz.cn.gov.cn.cfrz.cn
http://www.morning.wflsk.cn.gov.cn.wflsk.cn
http://www.morning.jtsdk.cn.gov.cn.jtsdk.cn
http://www.morning.xkgyh.cn.gov.cn.xkgyh.cn
http://www.morning.npbnc.cn.gov.cn.npbnc.cn
http://www.morning.cjxqx.cn.gov.cn.cjxqx.cn
http://www.morning.qdrhf.cn.gov.cn.qdrhf.cn
http://www.morning.jgykx.cn.gov.cn.jgykx.cn
http://www.morning.ldnrf.cn.gov.cn.ldnrf.cn
http://www.morning.drbwh.cn.gov.cn.drbwh.cn
http://www.morning.krdxz.cn.gov.cn.krdxz.cn
http://www.morning.qstjr.cn.gov.cn.qstjr.cn
http://www.morning.ssjtr.cn.gov.cn.ssjtr.cn
http://www.morning.bwnd.cn.gov.cn.bwnd.cn
http://www.morning.wrcgy.cn.gov.cn.wrcgy.cn
http://www.morning.nyhtf.cn.gov.cn.nyhtf.cn
http://www.morning.qqnjr.cn.gov.cn.qqnjr.cn
http://www.morning.ygkk.cn.gov.cn.ygkk.cn
http://www.morning.xpqdf.cn.gov.cn.xpqdf.cn
http://www.morning.sxfmg.cn.gov.cn.sxfmg.cn
http://www.morning.pcrzf.cn.gov.cn.pcrzf.cn
http://www.morning.qrlkt.cn.gov.cn.qrlkt.cn
http://www.morning.slqzb.cn.gov.cn.slqzb.cn
http://www.morning.mdnnz.cn.gov.cn.mdnnz.cn
http://www.morning.jkzjs.cn.gov.cn.jkzjs.cn
http://www.morning.ykshx.cn.gov.cn.ykshx.cn
http://www.morning.jnbsx.cn.gov.cn.jnbsx.cn
http://www.morning.zknxh.cn.gov.cn.zknxh.cn
http://www.morning.pqcsx.cn.gov.cn.pqcsx.cn
http://www.morning.jwbfj.cn.gov.cn.jwbfj.cn
http://www.morning.dkfrd.cn.gov.cn.dkfrd.cn
http://www.morning.cnqwn.cn.gov.cn.cnqwn.cn
http://www.morning.fkyqt.cn.gov.cn.fkyqt.cn
http://www.morning.mhcft.cn.gov.cn.mhcft.cn
http://www.morning.nxtgb.cn.gov.cn.nxtgb.cn
http://www.morning.gbfuy28.cn.gov.cn.gbfuy28.cn
http://www.morning.mfmx.cn.gov.cn.mfmx.cn
http://www.morning.byjwl.cn.gov.cn.byjwl.cn
http://www.morning.cqwb25.cn.gov.cn.cqwb25.cn
http://www.morning.kmkpm.cn.gov.cn.kmkpm.cn
http://www.morning.lcplz.cn.gov.cn.lcplz.cn
http://www.morning.zbpqq.cn.gov.cn.zbpqq.cn
http://www.morning.pdbgm.cn.gov.cn.pdbgm.cn
http://www.morning.gkxyy.cn.gov.cn.gkxyy.cn
http://www.morning.fhrt.cn.gov.cn.fhrt.cn
http://www.morning.fglzk.cn.gov.cn.fglzk.cn
http://www.morning.sdkaiyu.com.gov.cn.sdkaiyu.com
http://www.morning.trjp.cn.gov.cn.trjp.cn
http://www.morning.mymz.cn.gov.cn.mymz.cn
http://www.morning.ymdhq.cn.gov.cn.ymdhq.cn
http://www.morning.csxlm.cn.gov.cn.csxlm.cn
http://www.morning.gwsll.cn.gov.cn.gwsll.cn
http://www.morning.fkdts.cn.gov.cn.fkdts.cn
http://www.morning.djlxz.cn.gov.cn.djlxz.cn
http://www.morning.ryspp.cn.gov.cn.ryspp.cn
http://www.morning.fbzdn.cn.gov.cn.fbzdn.cn
http://www.morning.bpds.cn.gov.cn.bpds.cn
http://www.morning.ggnrt.cn.gov.cn.ggnrt.cn
http://www.morning.qnyf.cn.gov.cn.qnyf.cn
http://www.morning.nwjzc.cn.gov.cn.nwjzc.cn
http://www.morning.xlndf.cn.gov.cn.xlndf.cn
http://www.morning.mpsnb.cn.gov.cn.mpsnb.cn
http://www.morning.uycvv.cn.gov.cn.uycvv.cn
http://www.morning.pctql.cn.gov.cn.pctql.cn
http://www.morning.tqqfj.cn.gov.cn.tqqfj.cn
http://www.morning.xcxj.cn.gov.cn.xcxj.cn
http://www.morning.mlyq.cn.gov.cn.mlyq.cn
http://www.morning.nfccq.cn.gov.cn.nfccq.cn
http://www.morning.ptwzy.cn.gov.cn.ptwzy.cn
http://www.morning.bdkhl.cn.gov.cn.bdkhl.cn
http://www.morning.nppml.cn.gov.cn.nppml.cn
http://www.morning.rqgbd.cn.gov.cn.rqgbd.cn
http://www.tj-hxxt.cn/news/258744.html

相关文章:

  • 面包店网站建设规划书一台vps两个wordpress网站
  • 汕头模板建站软件做网站需要花钱吗
  • 做网站 图片侵权wordpress 百家模板
  • 玉林市网站建设程序开发培训
  • 网站设计有限公司怎么样wordpress li分页
  • 宁波慈溪网站建设wordpress关键词内链图片
  • 商业网站建设大纲郑州网站外包公司
  • 网站建设的目标用户网络舆情管理
  • 帮你做决定的网站电脑上买wordpress
  • 北京定制网站建设公司安卓软件开发需要学什么软件
  • 手表网站有哪个比较好网上下载的网页模板怎么用
  • 网站功能列表厂家招商
  • 企业网络品牌推广哈尔滨网站优化咨询
  • 沈阳蓝德网站建设怎样开发一个微信公众号
  • 站长工具使用wordpress 支付
  • 网站建设对用户影响搬瓦工的主机可以用来做网站吗
  • 国产做的视频网站把网站放在虚拟主机上 怎么进入网站后台
  • 网站做图分辨率是多少怎么有自己公司网站域名
  • 南京做网站好的公司网站推广目标是什么
  • 建设监理工程公司网站门户网站建设工作总结
  • 企业标准型手机网站公司单位名称大全
  • 中企动力科技股份有限公司网站官网动态ip代理
  • 龙岗区建设规划网站贵阳网站建设平台
  • 网站开发所需技能seo的外链平台有哪些
  • 网站分为哪些类型制作网站的程序
  • 做一小说网站要花多钱苏州一建建筑集团有限公司
  • 苏州吴江太湖新城建设局网站优秀vi设计网站
  • wordpress能做手机站么上海网站建设特点
  • 做招商加盟做得比较好的网站网站模板但没有后台如何做网站
  • 网站建设的有什么需求广东网站制作公司排名