La diferencia entre caballería e infantería. ¿Qué significan caballería e infantería?
En la antigüedad, la diferencia entre caballería e infantería era que la caballería tenía caballos y la infantería no. En los tiempos modernos, la diferencia entre caballería e infantería es:
1. Las definiciones son diferentes. La caballería ahora se refiere a soldados y sus unidades con gran movilidad y capacidades de proyección estratégica; la infantería se refiere a soldados que pueden maniobrar a pie.
2. La clasificación es diferente. La caballería se puede dividir en arqueros, caballería pesada, lanceros y la caballería ligera se puede dividir en infantería desmontada, infantería motorizada e infantería mecanizada.
3. Diferentes armas. Las armas de caballería modernas incluyen rifles, sables, ametralladoras ligeras y pesadas y artillería ligera. Las armas de la infantería moderna incluyen pistolas, rifles, metralletas, ametralladoras ligeras de escuadrón, granadas, lanzacohetes, etc.
上篇: Sistema estático se refiere a un sistema que no contienearchivos DLL, es decir, archivos de biblioteca de enlace dinámico, son archivos ejecutables que permiten a los programas * * * disfrutar del código y otros recursos necesarios para realizar Tareas especiales. Las aplicaciones grandes se componen de muchos módulos, que completan funciones relativamente independientes y cooperan entre sí para completar el trabajo de todo el sistema de software. Puede haber módulos con funcionalidad común que todavía se utilizan al crear otros sistemas de software. Al construir un sistema de software, si el código fuente de todos los módulos se compila estáticamente en el archivo EXE de la aplicación completa, surgirán algunos problemas: una desventaja es que el tamaño de la aplicación aumentará y ocupará más espacio en el disco. consume más espacio de memoria y provoca un desperdicio de recursos del sistema. Otra desventaja es que al escribir un programa EXE grande, todos los códigos fuente deben ajustarse y compilarse cada vez que se modifica y reconstruye, lo que aumenta la complejidad del proceso de compilación. Tampoco es propicio para pruebas unitarias periódicas. La plataforma del sistema Windows proporciona un entorno operativo y de programación completamente diferente y eficaz. Puede crear módulos de programa independientes como archivos DLL (biblioteca de vínculos dinámicos) más pequeños y compilarlos y probarlos individualmente. En tiempo de ejecución, el sistema cargará estos módulos DLL en el espacio de la memoria solo cuando el programa EXE realmente quiera llamarlos. Este enfoque no sólo reduce el tamaño del archivo EXE y los requisitos de espacio de memoria, sino que también permite que múltiples aplicaciones utilicen estos módulos DLL simultáneamente. El propio Windows implementa algunas funciones importantes del sistema en forma de módulos DLL. En términos generales, una DLL es un archivo de disco, está bien. dll,. DRV. rico,. SYS y muchos con. EXE como extensión. Consiste en datos globales, funciones de servicio y recursos. El sistema lo carga en el espacio virtual del proceso de llamada en tiempo de ejecución y se convierte en parte del proceso de llamada. Si no hay conflictos con otras DLL, el archivo generalmente se asigna a la misma dirección en el espacio virtual del proceso. El módulo DLL contiene varias funciones exportadas para brindar servicios al mundo exterior. Una DLL puede tener su propio segmento de datos, pero no puede tener su propia pila. Utiliza el mismo modo de pila que la aplicación que la llama; una DLL tiene solo una instancia en la memoria de la cual la DLL implementa la encapsulación del código; El lenguaje de programación específico y el compilador son independientes. En un entorno Win32, cada proceso copia sus propias variables globales de lectura/escritura. Si desea compartir memoria con otros procesos, debe utilizar un archivo asignado en memoria o declarar un segmento de datos compartido *. La memoria de pila requerida por el módulo DLL se asigna desde la pila del proceso en ejecución. Windows compara las llamadas a funciones de proceso con las funciones exportadas del archivo DLL al cargar un módulo DLL. Lo que hace el sistema operativo Windows con una DLL es simplemente asignar la DLL al espacio de direcciones virtuales del proceso que la necesita. Cualquier objeto (incluidas las variables) creado por código dentro de una función DLL pertenece al hilo o proceso que lo llama. Método de llamada: 1. Método de llamada estática: el sistema de compilación completa la codificación de carga y descarga de la DLL al final de la aplicación (si otros programas usan la DLL, el registro de la DLL de la aplicación de Windows se reducirá en 1 y no se publicará). hasta que todos los programas relacionados hayan usado la DLL. Simple y práctico, pero no lo suficientemente flexible para cumplir con los requisitos generales. Debe agregar el archivo LIB generado al generar la biblioteca de enlaces dinámicos del proyecto de la aplicación. Utilícelo cuando desee utilizar la función en la DLL. Las llamadas implícitas no requieren llamadas a LoadLibrary() y FreeLibrary(). Cuando el programador crea un archivo DLL, el vinculador genera automáticamente un archivo de importación LIB correspondiente que contiene el nombre del símbolo. y un identificador opcional de cada número de exportación de DLL, pero no contiene el código real. El archivo LIB se compila en el proyecto de la aplicación como un archivo de reemplazo para la DLL. Cuando el programador compila la aplicación mediante enlaces estáticos, las funciones de llamada. La aplicación coincide con los símbolos exportados en el archivo LIB. Estos símbolos o números de identificación van al archivo EXE generado. El archivo LIB también contiene el nombre del archivo DLL correspondiente (pero no la ruta completa), que el vinculador almacena en el archivo EXE. cuando la aplicación necesita cargar el archivo DLL, Windows busca y carga la DLL en función de esta información y luego vincula dinámicamente la función DLL por nombre de símbolo o número de identificación. Cuando se carga el archivo EXE de la aplicación, todos los archivos DLL llamados. La aplicación se cargará en el programa ejecutable y se vinculará al archivo de biblioteca de entrada (. 下篇: Fondo de pantalla para móvil Mi Vecino Totoro HD