把autoconfig.mk和/include/configs/

$(obj)include/autoconf.mk.dep: $(obj)include/config.h include/common.h   //这个地方指定了autoconfig.mk的由来
@$(XECHO) Generating $@ ; \
set -e ; \
: Generate the dependancies ; \
$(CC) -x c -DDO_DEPS_ONLY -M $(HOSTCFLAGS) $(CPPFLAGS) \
-MQ $(obj)include/autoconf.mk include/common.h > $@

$(obj)include/autoconf.mk: $(obj)include/config.h  //主要由config.h中的头文件包含而来 
@$(XECHO) Generating $@ ; \
set -e ; \
: Extract the config macros ; \
$(CPP) $(CFLAGS) -DDO_DEPS_ONLY -dM include/common.h | \
sed -n -f tools/scripts/define2mk.sed > $@.tmp && \
mv $@.tmp $@

在我的/include/config.h文件的内容是:

1 /* Automatically generated - do not edit */
2 #include <configs/mx6q_sabresd_android_2G.h>
3 #include <asm/config.h>

顺藤摸瓜,进入mx6q_sabresd_android_1G.h文件,内容如下

22 #ifndef MX6Q_SABRESD_ANDROID_H
23 #define MX6Q_SABRESD_ANDROID_H
24
25 #define CONFIG_FASTBOOT_PRODUCT_NAME_STR "Cynoware i.mx6dq Device"
26 #include "mx6q_sabresd.h"  //最重要的文件
27 #include "mx6_sabresd_android.h"
28
29 #endif

再进入mx6q_sabresd.h文件如下为选取的部分CONFIG_定义

#define CONFIG_CMD_PING
#define CONFIG_CMD_DHCP
#define CONFIG_CMD_MII
#define CONFIG_CMD_NET
#define CONFIG_NET_RETRY_COUNT 100
#define CONFIG_NET_MULTI 1
#define CONFIG_BOOTP_SUBNETMASK
#define CONFIG_BOOTP_GATEWAY
#define CONFIG_BOOTP_DNS

#define CONFIG_CMD_SPI
#define CONFIG_CMD_I2C
#define CONFIG_CMD_IMXOTP

/* Enable below configure when supporting nand */
#define CONFIG_CMD_SF
#define CONFIG_CMD_MMC
#define CONFIG_CMD_ENV
#define CONFIG_CMD_REGUL

#define CONFIG_CMD_CLOCK
#define CONFIG_REF_CLK_FREQ CONFIG_MX6_HCLK_FREQ

/* #define CONFIG_CMD_SATA */
#undef CONFIG_CMD_IMLS

#define CONFIG_CMD_IMX_DOWNLOAD_MODE

#define CONFIG_BOOTDELAY 3

#define CONFIG_PRIME "FEC0"

#define CONFIG_LOADADDR 0x10800000 /* loadaddr env var */
#define CONFIG_RD_LOADADDR (0x1300000)

#define CONFIG_EXTRA_ENV_SETTINGS \
"netdev=eth0\0" \
"ethprime=FEC0\0" \
"uboot=u-boot.bin\0" \
"kernel=uImage\0" \
"nfsroot=/opt/eldk/arm\0" \
"bootargs_base=setenv bootargs console=ttymxc0,115200\0"\
"bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs "\
"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0"\
"bootcmd_net=run bootargs_base bootargs_nfs; " \
"tftpboot ${loadaddr} ${kernel}; bootm\0" \
"bootargs_mmc=setenv bootargs ${bootargs} ip=dhcp " \
"root=/dev/mmcblk0p1 rootwait\0" \
"bootcmd_mmc=run bootargs_base bootargs_mmc; " \
"mmc dev 3; " \
"mmc read ${loadaddr} 0x800 0x2000; bootm\0" \
"bootcmd=run bootcmd_net\0" \

再进入mx6_sabresd_android.h文件分析

#ifndef MX6Q_SABRESD_ANDROID_INC_H
#define MX6Q_SABRESD_ANDROID_INC_H

#define CONFIG_USB_DEVICE
#define CONFIG_IMX_UDC 1
#define CONFIG_FASTBOOT 1
#define CONFIG_FASTBOOT_STORAGE_EMMC_SATA
#define CONFIG_FASTBOOT_VENDOR_ID 0x18d1
#define CONFIG_FASTBOOT_PRODUCT_ID 0x0d02
#define CONFIG_FASTBOOT_BCD_DEVICE 0x311
#define CONFIG_FASTBOOT_MANUFACTURER_STR "Freescale"
#define CONFIG_FASTBOOT_INTERFACE_STR "Android fastboot"
#define CONFIG_FASTBOOT_CONFIGURATION_STR "Android fastboot"
#define CONFIG_FASTBOOT_SERIAL_NUM "12345"
#define CONFIG_FASTBOOT_SATA_NO 0

/* For system.img growing up more than 256MB, more buffer needs
* to receive the system.img*/
#define CONFIG_FASTBOOT_TRANSFER_BUF 0x2c000000
#define CONFIG_FASTBOOT_TRANSFER_BUF_SIZE 0x14000000 /* 320M byte */

#define CONFIG_CMD_BOOTI
#define CONFIG_ANDROID_RECOVERY
/* which mmc bus is your main storage ? */
#define CONFIG_ANDROID_MAIN_MMC_BUS 3
#define CONFIG_ANDROID_BOOT_PARTITION_MMC 1
#define CONFIG_ANDROID_SYSTEM_PARTITION_MMC 5
#define CONFIG_ANDROID_RECOVERY_PARTITION_MMC 2
#define CONFIG_ANDROID_CACHE_PARTITION_MMC 6

#define CONFIG_ANDROID_RECOVERY_BOOTARGS_MMC NULL
#define CONFIG_ANDROID_RECOVERY_BOOTCMD_MMC \
"booti mmc3 recovery"
#define CONFIG_ANDROID_RECOVERY_BOOTCMD_SD \
"booti mmc2 recovery"
#define CONFIG_ANDROID_RECOVERY_CMD_FILE "/recovery/command"
#define CONFIG_INITRD_TAG

#undef CONFIG_LOADADDR
#undef CONFIG_RD_LOADADDR
#undef CONFIG_EXTRA_ENV_SETTINGS

#define CONFIG_LOADADDR 0x10800000 /* loadaddr env var */
#define CONFIG_RD_LOADADDR 0x11000000

#define CONFIG_INITRD_TAG
#define CONFIG_EXTRA_ENV_SETTINGS \
"netdev=eth0\0" \
"ethprime=FEC0\0" \
"fastboot_dev=mmc3\0" \
"bootcmd=run hw_${hw_name}; run hw_${hw_name}_${hw_version}; run set_bootargs; booti mmc3\0"\
"bootcmd_android_recovery=run hw_${hw_name}; run hw_${hw_name}_${hw_version}; run set_bootargs; booti mmc3 recovery\0"\
"splashimage=0x30000000\0" \
"splashpos=m,m\0" \
"lvds_num=0\0" \
"screen0=setenv video video=mxcfb0:dev=ldb,LDB-XGA,if=RGB24,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=10M,28M vmalloc=512M ldb=dul1\0" \
"screen1=setenv video video=mxcfb0:dev=ldb,1024x600M@60,if=RGB666,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=10M,28M vmalloc=512M ldb=dul1\0" \
"screen2=setenv video video=mxcfb0:dev=ldb,1366x768M@60,if=RGB666,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=14M,28M vmalloc=512M ldb=dul1\0" \
"screen3=setenv video video=mxcfb0:dev=ldb,LDB-XGA,if=RGB24,bpp=32 video=mxcfb1:off video=mxcfb2:off fbmem=10M vmalloc=400M ldb=sin0\0" \
"screen4=setenv video video=mxcfb0:dev=ldb,1440x900M@60,if=RGB24,bpp=32 video=mxcfb1:off video=mxcfb2:off fbmem=28M vmalloc=512M ldb=spl0\0" \
"screen5=setenv video video=mxcfb0:dev=ldb,LDB-XGA,if=RGB24,bpp=32 video=mxcfb1:dev=hdmi,1024x768M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=10M,28M vmalloc=512M ldb=dul1\0" \
"screen6=setenv video video=mxcfb0:dev=ldb,LDB-XGA,if=RGB666,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=10M,28M vmalloc=512M ldb=dul1\0" \
"set_bootargs=setenv bootargs console=ttymxc0,115200 androidboot.console=ttymxc0 androidboot.hardware=freescale init=/init ${video} enable_wait_mode=off calibration hw_name=${hw_name} hw_version=${hw_version} fec_mac=${fec_mac}\0"\
"hw_general=setenv lvds_num; run screen0\0" \
"hw_P140=setenv lvds_num 0; run screen2\0" \
"hw_S10=setenv lvds_num 0; run screen1\0" \
"hw_P10=run hw_S10\0" \
"hw_C6=set lvds_num; run screen5\0" \
"hw_name=general\0" \
"hw_version=0\0"
#endif

//xh: remove fb0base=... according to https://freescale.hosted.jivesoftware.com/thread/325541

/////////////////////////////////////////

CONFIG_CMD_FAT=y
CONFIG_HARD_I2C=y
CONFIG_IMX_OTP=y
CONFIG_CMD_ITEST=y
CONFIG_ETH_PRIME=y
CONFIG_CMD_BDI=y
CONFIG_MX6Q=y
CONFIG_SYS_GBL_DATA_SIZE=128
CONFIG_SYS_LOAD_ADDR="CONFIG_LOADADDR"
CONFIG_DISPLAY_BOARDINFO=y
CONFIG_STACKSIZE="(128 * 1024)"
CONFIG_SYS_HELP_CMD_WIDTH=8
CONFIG_NR_DRAM_BANKS=y
CONFIG_CMD_CONSOLE=y
CONFIG_FEC0_PINMUX="-1"
CONFIG_GET_FEC_MAC_ADDR_FROM_IIM=y
CONFIG_MMC=y
CONFIG_REVISION_TAG=y
CONFIG_ARM=y
CONFIG_FASTBOOT_INTERFACE_STR="Android fastboot"
CONFIG_MX6Q_SABRESD=y
CONFIG_ENV_OFFSET="(768 * 1024)"
CONFIG_MXC=y
CONFIG_ENV_OVERWRITE=y
CONFIG_CMD_NET=y
CONFIG_CMD_NFS=y
CONFIG_ENV_SIZE="CONFIG_ENV_SECT_SIZE"
CONFIG_CMD_PING=y
CONFIG_SYS_MALLOC_LEN="(2 * 1024 * 1024)"
CONFIG_SYS_NO_FLASH=y
CONFIG_INITRD_TAG=y
CONFIG_SYS_MMC_ENV_DEV=2
CONFIG_FASTBOOT_STORAGE_EMMC_SATA=y
CONFIG_CMD_CLOCK=y
CONFIG_CMD_FLASH=y
CONFIG_CMD_SAVEENV=y
CONFIG_IMX_PWM=y
CONFIG_FSL_ENV_IN_MMC=y
CONFIG_CMD_IMXOTP=y
CONFIG_DYNAMIC_MMC_DEVNO=y
CONFIG_IMX_ECSPI=y
CONFIG_SYS_BAUDRATE_TABLE="{9600, 19200, 38400, 57600, 115200}"
CONFIG_FASTBOOT_SERIAL_NUM=12345
CONFIG_FEC0_MIIBASE="-1"
CONFIG_FLASH_HEADER=y
CONFIG_MXC_GPIO=y
CONFIG_CMD_SETGETDCR=y
CONFIG_CMD_EXT2=y
CONFIG_FEC0_IOBASE="ENET_BASE_ADDR"
CONFIG_FASTBOOT_PRODUCT_NAME_STR="Cynoware i.mx6dq Device"
CONFIG_SERIAL_TAG=y
CONFIG_ANDROID_SYSTEM_PARTITION_MMC=5
CONFIG_FASTBOOT_MANUFACTURER_STR="Freescale"
CONFIG_NET_MULTI=y
CONFIG_DOS_PARTITION=y
CONFIG_FASTBOOT_TRANSFER_BUF="0x2c000000"
CONFIG_RD_LOADADDR="0x11000000"
CONFIG_CMD_FPGA=y
CONFIG_SYS_FSL_ESDHC_ADDR=0
CONFIG_CMD_REGUL=y
CONFIG_L2_OFF=y
CONFIG_SYS_I2C_SLAVE="0x8"
CONFIG_ANDROID_RECOVERY=y
CONFIG_CMD_ECHO=y
CONFIG_GENERIC_MMC=y
CONFIG_PRIME="FEC0"
CONFIG_EXTRA_ENV_SETTINGS="netdev=eth0\0ethprime=FEC0\0fastboot_dev=mmc3\0bootcmd=run hw_${hw_name}; run hw_${hw_name}_${hw_version}; run set_bootargs; booti mmc3\0bootcmd_android_recovery=run hw_${hw_name}; run hw_${hw_name}_${hw_version}; run set_bootargs; booti mmc3 recovery\0splashimage=0x30000000\0splashpos=m,m\0lvds_num=0\0screen0=setenv video video=mxcfb0:dev=ldb,LDB-XGA,if=RGB24,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=10M,28M vmalloc=512M ldb=dul1\0screen1=setenv video video=mxcfb0:dev=ldb,1024x600M@60,if=RGB666,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=10M,28M vmalloc=512M ldb=dul1\0screen2=setenv video video=mxcfb0:dev=ldb,1366x768M@60,if=RGB666,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=14M,28M vmalloc=512M ldb=dul1\0screen3=setenv video video=mxcfb0:dev=ldb,LDB-XGA,if=RGB24,bpp=32 video=mxcfb1:off video=mxcfb2:off fbmem=10M vmalloc=400M ldb=sin0\0screen4=setenv video video=mxcfb0:dev=ldb,1440x900M@60,if=RGB24,bpp=32 video=mxcfb1:off video=mxcfb2:off fbmem=28M vmalloc=512M ldb=spl0\0screen5=setenv video video=mxcfb0:dev=ldb,LDB-XGA,if=RGB24,bpp=32 video=mxcfb1:dev=hdmi,1024x768M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=10M,28M vmalloc=512M ldb=dul1\0screen6=setenv video video=mxcfb0:dev=ldb,LDB-XGA,if=RGB666,bpp=32 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb2:off fbmem=10M,28M vmalloc=512M ldb=dul1\0set_bootargs=setenv bootargs console=ttymxc0,115200 androidboot.console=ttymxc0 androidboot.hardware=freescale init=/init ${video} enable_wait_mode=off calibration hw_name=${hw_name} hw_version=${hw_version} fec_mac=${fec_mac}\0hw_general=setenv lvds_num; run screen0\0hw_P140=setenv lvds_num 0; run screen2\0hw_S10=setenv lvds_num 0; run screen1\0hw_P10=run hw_S10\0hw_C6=set lvds_num; run screen5\0hw_name=general\0hw_version=0\0"
CONFIG_FB_BASE="(TEXT_BASE + 0x300000)"
CONFIG_FASTBOOT_BCD_DEVICE="0x311"
CONFIG_NETMASK="255.255.255.0"
CONFIG_FASTBOOT_TRANSFER_BUF_SIZE="0x14000000"
CONFIG_SPLASH_SCREEN_ALIGN=y
CONFIG_SYS_DEF_EEPROM_ADDR=0
CONFIG_SYS_MEMTEST_END="0x10010000"
CONFIG_CMD_I2C=y
CONFIG_ARCH_CPU_INIT=y
CONFIG_CMD_IMX_DOWNLOAD_MODE=y
CONFIG_BAUDRATE=115200
CONFIG_SYS_MEMTEST_START="0x10000000"
CONFIG_CMD_LOADB=y
CONFIG_FEC0_PHY_ADDR="0xFF"
CONFIG_CMD_LOADS=y
CONFIG_CMD_IMI=y
CONFIG_IMX_UDC=y
CONFIG_ARMV7=y
CONFIG_FASTBOOT_CONFIGURATION_STR="Android fastboot"
CONFIG_RMII=y
CONFIG_BOOTP_SUBNETMASK=y
CONFIG_ANDROID_RECOVERY_BOOTARGS_MMC="NULL"
CONFIG_FASTBOOT=y
CONFIG_FASTBOOT_SATA_NO=0
CONFIG_UART_BASE_ADDR="UART1_BASE_ADDR"
CONFIG_CMD_SOURCE=y
CONFIG_SPI_FLASH_IMX_M25PXX=y
CONFIG_CMD_BOOTD=y
CONFIG_MXC_FEC=y
CONFIG_MMC_8BIT_PORTS="0xC"
CONFIG_SYS_LONGHELP=y
CONFIG_REF_CLK_FREQ="CONFIG_MX6_HCLK_FREQ"
CONFIG_FASTBOOT_PRODUCT_ID="0x0d02"
CONFIG_CMD_SPI=y
CONFIG_VIDEO_MX5=y
CONFIG_CORE_REGULATOR_NAME="vdd1p1"
CONFIG_CMD_XIMG=y
CONFIG_BOOTDELAY=3
CONFIG_ANDROID_MAIN_MMC_BUS=3
CONFIG_BMP_8BPP=y
CONFIG_SYS_CBSIZE=1024
CONFIG_FASTBOOT_VENDOR_ID="0x18d1"
CONFIG_ANDROID_RECOVERY_BOOTCMD_MMC="booti mmc3 recovery"
CONFIG_ANDROID_RECOVERY_BOOTCMD_SD="booti mmc2 recovery"
CONFIG_CMD_MISC=y
CONFIG_ANDROID_CACHE_PARTITION_MMC=6
CONFIG_ANDROID_RECOVERY_CMD_FILE="/recovery/command"
CONFIG_SYS_64BIT_VSPRINTF=y
CONFIG_FSL_SF=y
CONFIG_DISCOVER_PHY=y
CONFIG_SYS_I2C_SPEED=100000
CONFIG_DISPLAY_CPUINFO=y
CONFIG_CMD_BMP=y
CONFIG_MXC_UART=y
CONFIG_ENV_SECT_SIZE="(8 * 1024)"
CONFIG_SPLASH_SCREEN=y
CONFIG_IPU_V3H=y
CONFIG_USB_DEVICE=y
CONFIG_BOOTP_DNS=y
CONFIG_CMD_MEMORY=y
CONFIG_SYS_MAXARGS=32
CONFIG_ANDROID_BOOT_PARTITION_MMC=y
CONFIG_CMD_RUN=y
CONFIG_IPADDR="192.168.1.103"
CONFIG_SYS_PBSIZE="(CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)"
CONFIG_ANDROID_RECOVERY_PARTITION_MMC=2
CONFIG_I2C_MXC=y
CONFIG_CMDLINE_EDITING=y
CONFIG_SYS_CONSOLE_IS_IN_ENV=y
CONFIG_ANATOP_REGULATOR=y
CONFIG_IMX_MMC=y
CONFIG_NET_RETRY_COUNT=100
CONFIG_IPU_CLKRATE=260000000
CONFIG_SETUP_MEMORY_TAGS=y
CONFIG_LOADADDR="0x10800000"
CONFIG_CMD_BOOTI=y
CONFIG_GET_DDR_TARGET_DELAY=y
CONFIG_SYS_BARGSIZE="CONFIG_SYS_CBSIZE"
CONFIG_AUTO_COMPLETE=y
CONFIG_PERIPH_REGULATOR_NAME="vdd1p1"
CONFIG_ENV_IS_IN_MMC=y
CONFIG_SYS_HZ=1000
CONFIG_CMD_MMC=y
CONFIG_SYS_WHITE_ON_BLACK=y
CONFIG_MX6_HCLK_FREQ=24000000
CONFIG_CMD_SF=y
CONFIG_SPI_FLASH_CS=0
CONFIG_SYS_CONSOLE_ENV_OVERWRITE=y
CONFIG_CMD_DHCP=y
CONFIG_SYS_FSL_USDHC_NUM=4
CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
CONFIG_BOOTP_GATEWAY=y
CONFIG_MX6_CLK32=32768
CONFIG_CMDLINE_TAG=y
CONFIG_PARTITIONS=y
CONFIG_CMD_ENV=y
CONFIG_ARP_TIMEOUT="200UL"
CONFIG_SKIP_RELOCATE_UBOOT=y
CONFIG_SYS_PROMPT="MX6Q SABRESD U-Boot > "
CONFIG_LCD=y
CONFIG_CONS_INDEX=y
CONFIG_SERVERIP="192.168.1.101"
CONFIG_CMD_MII=y
CONFIG_SYS_I2C_PORT="I2C1_BASE_ADDR"
CONFIG_FLASH_HEADER_OFFSET="0x400"

include/autoconfig.mk的更多相关文章

  1. uboot下include\autoconfig.mk分析

    CONFIG_CMD_FAT=yCONFIG_HARD_I2C=yCONFIG_IMX_OTP=yCONFIG_CMD_ITEST=yCONFIG_ETH_PRIME=yCONFIG_CMD_BDI= ...

  2. uboot总结:uboot配置和启动过程3(config.mk分析)

    说明:文件位置:在uboot的目录下,文件名为:config.mk.是一个makefile文件,以后会被主Makefile调用. 它的主要作用的是: (1)具体的设置交叉编译工具链接(主Makefil ...

  3. u-boot 学习系列 1 - SPL

    u-boot这个东西从自我N年前使用到现在,变化好多,今天开始重新研究下,本系列的研究都是基于BeagleBoneBlack(bbb)开发板和 u-boot v201801版本的. SPL介绍 在源代 ...

  4. uboot顶层config.mk分析

    uboot顶层目录中的config.mk定义了确定了当前执行makefile所对应的源文件目录.目标文件目录,编译的程序编译.连接的选项,以及目标文件生成的规则等等.它被包含在顶层的makefile以 ...

  5. zz android 系统 makefile文件(Android.mk)组织结构

    Android.mk脚本结构 下面是main.mk文件包含关系,本文档主要说明的就是这些文件里到底做了什么.(这个文件被根目录下的makefile文件包含) 一.     main.mk 1.检查版本 ...

  6. U-Boot Makefile分析(2) config.mk分析

    浏览一下U-Boot各个子目录下的Makefile可以看到,几乎他们都会包含$(TOPDIR)/config.mk,那么这个文件进行了什么操作呢?简单概括:读入include/config.mk.in ...

  7. u-boot-2015.07 autoconf.mk生成过程分析

    1.u-boot2015.7版本编译没有在顶层目录中生成.config文件,而生成了include/autoconf.mk和include/autoconf.mk.dep两个文件,并在每个模块编译的时 ...

  8. 神奇的make自动生成include file的功能

    嗯,今天研究公司makefile的代码,始终搞不明白有一段下载编译依赖的rule recipe(对这个名词不了解请参考make的官方文档)是怎么执行的.明明在执行的时候并指定的target并没有依赖那 ...

  9. 分析Android (build/core/*.mk脚本)

    文档简要整理Android的make脚本的内容.以供备忘和参考. 1.    Build LayersBuild Layers描述的是产品的硬件配置情况,据此make时选择不同的配置和模块.按照从上到 ...

随机推荐

  1. ES5数组的方法

    var ary = [1,23,4]; function isArray(o){ return Object.prototype.toString.call(o)=='[object Array]'; ...

  2. SNMP4J 总结

    一.SNMP4J介绍 SNMP4J是一个用Java来实现SNMP(简单网络管理协议)协议的开源项目.它支持以命令行的形式进行管理与响应.SNMP4J是纯面向对象设计与SNMP++(用C++实现SNMP ...

  3. javascript要点(上)

    立即执行函数 即Immediately Invoked Function Expression (IIFE),正如它的名字,就是创建函数的同时立即执行.它没有绑定任何事件,也无需等待任何异步操作: ( ...

  4. Docker容器与容器数据

    Docker容器与容器数据 image 与container 镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的 类 和 实例 一样,镜像是静态的定义,容器是镜像运行时的 ...

  5. 我的NopCommerce之旅(2): 系统环境及技术分析

    一.系统环境 IIS7.0 or above ASP.NET 4.5(MVC 5.0) .NET Framework 4.5.1 or above VS 2012 or above 二.架构设计 Pl ...

  6. dataTable 中数据的居中显示

    遇到了一个小问题,就是在向dataTable中添加数据时,数据总是向左对齐,而dataTable又没有设置数据对齐的方法,这里写一个在网上看到的一个方法,分享出来看一下,简单实用. html代码如图1 ...

  7. 部署ASP.Net Core 2.1 項目到 IIS

    用Asp.net core 2.1 寫了一個小的系統框架,記錄一下部署過程: 1. 首先是安裝 IIS 了,從 控制面板→程序→启用或关闭Windows功能→勾选Internet Informatio ...

  8. git与GitHub(一)

    相信,很多初入前端者都会对git以及GitHub不太了解,而我当时也经历过各种面试大关,也都会问:你了解git和GitHub吗?那么今天先来说一说git. 那么什么是git? (以下转载自廖雪峰老师的 ...

  9. 将Android系统源码导入Android studio的方法

    Android源码目录结构如下: |-- Makefile|-- abi (applicationbinary interface,应用程序二进制接口,生成libgabi++.so相关库文件)|-- ...

  10. 用python格式化小说txt

    下载了<无人生还>的txt版.传到手机,发现阅读器识别得不够好. 原文格式如下: 第一章 一 沃格雷夫法官先生新近离任退休,现在正在头等车厢的吸烟室里,倚角而坐,一 边喷着雪茄烟,一边兴致 ...