Red de conocimiento informático - Espacio del host - ¿Qué cursos necesita aprender sobre aplicaciones integradas en teléfonos móviles?

¿Qué cursos necesita aprender sobre aplicaciones integradas en teléfonos móviles?

Primero haga el hardware... y luego el software. . . .

Aprende ensamblaje, microcontrolador. . . . .

También necesita aprender algo sobre c vc y poder depurar usted mismo el sistema operativo y la estructura de datos.

Los cursos más importantes en software integrado incluyen:

(1)

Estructura y aplicación del microprocesador integrado: este es un curso básico de hardware integrado, nuestra escuela tiene Usó este curso para reemplazar el curso tradicional "Principios e interfaces de microcomputadoras" (actualmente, un pequeño número de estudiantes de TI en colegios y universidades de China lo han hecho porque es difícil encontrar un uso práctico en la enseñanza de principios e interfaces de microcomputadoras x86, y es sólo para enseñar). Hemos dicho que integrado es una tecnología que combina software y hardware. Las personas que se dedican al software integrado deben tener una comprensión completa de los principios de funcionamiento y la tecnología de interfaz de los procesadores ARM, incluido el sistema de instrucciones de ensamblaje de ARM. Si no comprende los principios del procesador, ¿cómo puede controlar el funcionamiento del hardware? ¿Cómo puede escribir el código óptimo que ahorre memoria y se ejecute a alta velocidad (el diseño del software integrado presta especial atención a la eficiencia del tiempo y el espacio)? ¿Cómo se puede escribir un controlador (todos los controladores están relacionados con el hardware)? Muchas empresas exigen que estén familiarizadas con los procesadores ARM al contratar personal de software integrado. En el futuro, si los estudiantes vienen a la empresa para participar en el desarrollo de software integrado, la empresa le entregará un manual de especificaciones de hardware para el dispositivo. p>(xxx

(xxx

p>

Especificación), debe poder comprender las instrucciones más básicas, como la distribución de memoria y el uso de puertos (al igual que el ensamblaje x86); de lo contrario, cómo diseñar el software. Algunos estudiantes sienten que el curso de procesador integrado es aburrido. Esto se debe principalmente a que los cursos de hardware son más abstractos. Después de construir nuestro laboratorio integrado en octubre, sentirán que es tangible y tangible. Algunos estudiantes no están interesados ​​en el ensamblaje ARM y piensan que el lenguaje C es suficiente para el desarrollo integrado. De hecho, el lenguaje ensamblador no debe considerarse simplemente como un lenguaje de programación. El objetivo principal de aprender ensamblador es dominar el principio de funcionamiento del procesador. ¿Cómo puede una persona que no está familiarizada con el lenguaje ensamblador escribir código óptimo en lenguaje C en este procesador? En algunas partes clave del desarrollo integrado, a veces se debe escribir ensamblador, como el cargador de arranque, etc. (que también puede incluir BSP). Especialmente en situaciones que tienen requisitos de velocidad extremadamente altos (como la adquisición de imágenes de alta velocidad y la descompresión de imágenes de los procesadores DSP), actualmente dependemos principalmente de la escritura ensambladora (he visto a muchas empresas hacer esto). Cuando trabaja en una empresa integrada, cuando mira los manuales que describen principios, muchos de ellos pueden estar descritos en ensamblaje (me he encontrado con esto porque muchos diseñadores de hardware solo pueden escribir o les gusta usar descripciones de ensamblaje). debe comprender al ensamblador; de lo contrario, es posible que la gente de software y hardware no pueda comunicarse. Muchos puestos incorporados requieren familiaridad con el montaje al momento de la contratación.

(2) Cursos sobre sistemas operativos integrados

A excepción de WinCE, que tiene un rendimiento en tiempo real ligeramente pobre, la mayoría de los sistemas operativos integrados tienen un rendimiento en tiempo real sólido, por lo que también pueden ser llamado Sistema operativo

en tiempo real

Las personas involucradas en sistemas integrados deben dominar al menos un sistema operativo integrado (por supuesto, es mejor dominar dos), lo cual es importante en todos. Los sistemas integrados. La tecnología es la más crítica. En la actualidad, los RTOS más importantes incluyen principalmente:

La primera categoría, RTOS clásico tradicional: el más importante es el sistema operativo Vxworks y su plataforma de desarrollo Tornado. Vxworks apareció antes, tiene un fuerte rendimiento en tiempo real (se dice que puede responder a solicitudes de eventos externos en 1 ms), tiene un núcleo extremadamente pequeño (se dice que es tan pequeño como 8K) y, por lo tanto, tiene una alta confiabilidad. En América del Norte, Vxworks ocupa la cuota de mercado de los sistemas integrados. La mayoría de ellos son montañas. Especialmente en sistemas con altos requisitos en tiempo real, como equipos de comunicación, Vxworks es casi la mejor opción. Muchos conceptos y tecnologías de Vxworks son muy similares a Linux, principalmente el desarrollo del lenguaje C. Empresas de comunicación como Bell-alcatel, Lucent y Huawei utilizan mucho Vxworks al desarrollar productos. Sin embargo, debido a que Vxworks es muy caro, algunas pequeñas empresas o productos pequeños a menudo no pueden permitírselo. Actualmente, muchas empresas están cambiando a Linux integrado (escuché que Huawei está cambiando actualmente a esto). Pero pase lo que pase, Vxworks seguirá siendo inquebrantable durante mucho tiempo.

Los sistemas operativos en tiempo real ligeramente famosos similares a Vxworks incluyen RTOS como pSOS, QNX y Nucleus.

La segunda categoría, el sistema operativo Linux integrado: además de su futuro como sistema operativo de servidor, la aplicación más exitosa de Linux se encuentra en el campo integrado. La razón es, por supuesto, que es gratuito y abierto. Fuente, admite una gran cantidad de software y hay muchos fanáticos, por lo que el costo de los productos integrados será menor. Linux en sí no es un sistema operativo diseñado para sistemas integrados, no está basado en microkernel y su rendimiento en tiempo real no es sólido. Hay dos tipos principales de sistemas Linux que se utilizan actualmente en el campo integrado: uno es un sistema Linux reducido diseñado específicamente para uso integrado. El más utilizado es uClinux (sin función MMU), que actualmente representa una gran parte de las aplicaciones. se puede ejecutar en ARM7, el otro tipo se ejecuta en ARM

9, generalmente se trasplanta el kernel de Linux

2.4.18 y se pueden usar más funciones de Linux (por supuesto, uClinux); incluso puede ejecutarse en ARM

9). Mucha gente predice que se espera que Linux integrado represente más del 50% de los sistemas operativos integrados, lo cual es muy importante. La desventaja es que hay muy poca gente familiarizada con Linux y el desarrollo es un poco más difícil. Además, actualmente podemos encontrar que muchos libros de texto y muchas universidades utilizan ucOS/II como sistema operativo en tiempo real para la enseñanza. Esto se debe principalmente a que ucOS/II es relativamente simple y de código abierto, lo cual es muy adecuado para que los principiantes aprendan. Sin embargo, debido a los principios de los sistemas operativos en tiempo real, ucOS / II II tiene funciones limitadas y rara vez se usa en aplicaciones prácticas, nuestra universidad no lo considera como el foco de la enseñanza. Si desea aprender, debe aprender de manera directa y. los prácticos. Por ejemplo, uClinux es muy práctico. Además, estar familiarizado con el desarrollo de Linux no solo es útil en el campo integrado, sino que también es útil para desarrollar software de aplicaciones de Linux y profundizar la comprensión de los sistemas operativos. Hasta donde yo sé, Intel y Philip se dedican actualmente al desarrollo integrado de ARM+LINUX, mientras que Fujitum se dedica al desarrollo de Linux en sus propios procesadores. En la actualidad, en el campo del Linux integrado, es particularmente difícil encontrar personas en los siguientes aspectos: en primer lugar, personas que puedan migrar Linux a un nuevo modelo de versión de desarrollo; en segundo lugar, personas que puedan escribir controladores para Linux; Estoy familiarizado con la reducción del kernel de Linux y la gente del Optimizador. La serie de cursos de nuestra universidad sobre Linux integrado es: un curso obligatorio sobre sistemas operativos para estudiantes universitarios, luego un curso optativo sobre programación Linux y, finalmente, un curso optativo sobre sistemas Linux integrados. Actualmente, nuestra universidad tiene sólidas capacidades en Linux. Los profesores Wei y Zhang están familiarizados con el desarrollo de Linux, y los profesores Jin y Tang están familiarizados con la administración de sistemas Linux.

La tercera categoría, el sistema operativo integrado Windows

CE: Microsoft también se ha centrado en el enorme mercado integrado. MS siempre será el más potente y sólo ha existido durante unos años. Pero actualmente ocupa una gran cuota de mercado, especialmente en situaciones como PDA, teléfonos móviles, instrumentos de visualización, etc. que tienen altos requisitos de interfaz o requieren un rápido desarrollo ahora es muy popular (se dice que es una empresa que vende productos industriales). (las computadoras venden muy bien placas), incluso es demasiado tarde para eliminar WinCE para los clientes). Actualmente, WinCE es principalmente la versión 4.2 (.NET), y la plataforma de desarrollo es principalmente WinCE Platform Builder. A veces, el entorno EVC se utiliza para desarrollar algunas aplicaciones de nivel superior. Dado que el desarrollo de WinCE se realiza en el entorno VC ++ con el que todos están familiarizados. La escuela ha aprendido programación de Windows. Ninguno de los estudiantes del curso lo encuentra difícil, por lo que la gente acepta fácilmente WinCE. El entorno de desarrollo es conveniente y rápido, y el sólido soporte técnico de Microsoft hace que el desarrollo de WinCE sea mucho más difícil que Linux integrado. Para situaciones de desarrollo que están ansiosas por completar y no quieren correr riesgos con Linux integrado, WinCE es el más adecuado (no es tan fácil encontrar personas que quieran encontrar Linux integrado, después de todo, las empresas no pueden probarlo). estudiantes, y es más importante asegurar un desarrollo exitoso. Según diferentes enfoques, existen dos versiones especiales de WinCE. Una es el sistema operativo MS PocketPC dedicado a PDA (computadoras de mano) y la otra es el sistema operativo MS SmartPhone para teléfonos inteligentes (teléfonos móviles con funciones de PDA). también pertenecen a la plataforma WinCE.

En los mercados de PDA y teléfonos móviles, además de WinCE, los famosos sistemas operativos integrados de PDA incluyen Palm OS (muy famoso porque apareció muy temprano), Symbian, etc. Sin embargo, bajo el fuerte impacto de WinCE, Palm y Symbian seguirán ¿Podrá sobrevivir en el futuro? Nuestra universidad puede ser la única escuela en el país que ofrece un curso especial sobre "Sistema operativo integrado Windows CE". Esto se debe principalmente a las siguientes razones: nuestra universidad tiene cursos de programación de Windows y los estudiantes aprenden WinCE después de aprender. VC++., Muy conveniente y natural Al aprender WinCE, también puede comprender el proceso general de desarrollo del software integrado. También es adecuado para estudiantes que le temen a Linux. Obviamente, Linux integrado nunca podrá reemplazar a WinCE y es difícil decir quién tendrá la mayor participación en el futuro. Después de todo, muchas personas están más dispuestas a aceptar la plataforma MS. Al igual que los gobiernos de varios países han estado promoviendo vigorosamente LINUX. durante mucho tiempo, pero ¿cuántos usuarios puedes ver que realmente usan LINUX en sus PC? Según mi observación, actualmente entre las plataformas integradas, LINUX es la más ruidosa, pero WinCE en realidad se usa más. Linux integrado puede ser más una empresa con planes de productos a largo plazo y consideraciones a largo plazo para reducir costos.

El segundo es el plan de soporte de Microsoft Research Asia para los cursos WinCE de nuestra universidad. También esperamos que en el futuro, los estudiantes de nuestra universidad aprueben las entrevistas de Microsoft para realizar prácticas. WinCE y multimedia (como la tecnología MPEG) son una de las áreas de proyectos en las que Microsoft Asia Engineering Academy está haciendo mucho actualmente y tienen una gran necesidad de personas que dominen WinCE.

En resumen, con respecto a los cursos de sistemas operativos integrados, si cree que tiene una base sólida y puede continuar estudiando, puede aprender Linux integrado si cree que tiene una buena base de VC++ y lo desea; para aprender integrado de forma rápida y sencilla Si está desarrollando, el curso WinCE de nuestro instituto es la mejor opción.

(3) Otros cursos de software relacionados para el desarrollo integrado

Si está familiarizado con algunos campos importantes de las aplicaciones integradas, estas personas serán más populares entre las empresas. Los principales campos relacionados incluyen:

A. Tecnología de compresión de imágenes digitales: este es uno de los campos de aplicación más importantes y populares de las tecnologías integradas. Es principalmente necesario dominar los algoritmos y tecnologías de codificación y decodificación de MPEG, como. DVD, MP3, PDA, televisores de alta definición, decodificadores, etc. implican problemas de decodificación de alta velocidad MPEG. Para ello, nuestra escuela ha reservado un médico que podrá impartir cursos de procesamiento de imágenes digitales.

B. Protocolos de comunicación y tecnología de programación: Esto incluye el protocolo tradicional TCP/IP y los populares protocolos de comunicación inalámbrica. En primer lugar, la mayoría de los dispositivos integrados deben estar conectados a la LAN o a Internet, por lo que primero debe dominar el protocolo TCP/IP y su programación. Esta es la tecnología básica que debe dominarse primero. La principal tendencia actual, por lo que dominar la comunicación inalámbrica y la programación también es muy importante. Los protocolos de comunicación sin nudos incluyen el protocolo de comunicación LAN inalámbrica serie 802.11, Bluetooth y comunicaciones móviles (como GPRS, GSM, CDMA, etc.).

C. Tecnología de seguridad de la información y la red: como tecnología de cifrado, certificado digital CA, etc. Nuestra universidad tiene cursos electivos en esta área.

Tecnología DSP: DSP es señal digital

Procesamiento de señal digital El procesador DSP implementa algoritmos de procesamiento de señal digital a través de hardware, como adquisición, compresión y compresión de datos de alta velocidad. descompresión, comunicaciones, etc. El procesamiento de señales digitales es un curso para especialistas en hardware, como electrónica y comunicaciones. Sería mejor si las personas que trabajan en software pudieran entenderlo. Actualmente hay escasez de talentos DSP. Si tiene una base en cursos como señales y sistemas, procesamiento de señales digitales, etc., será de gran ayuda para aprender los principios de codificación y decodificación MPEG.

(4) Base de hardware relevante para el desarrollo integrado

Para estudiantes de ingeniería de software que participan en el desarrollo de software integrado, como circuitos digitales, principios de composición de computadoras y estructuras de microprocesadores integrados, los cursos de hardware son más importante. Además, también son muy importantes los cursos básicos de software como lenguaje ensamblador, C/C++, estructuras de datos y algoritmos, especialmente sistemas operativos. Nuestro objetivo principal es comprender cómo funciona el hardware, pero la atención debe centrarse en el software integrado, especialmente el software a nivel del sistema operativo, que será nuestra ventaja.

Algunos de nuestros estudiantes de posgrado se especializaron en electrónica y comunicaciones. Tienen una buena base en circuitos analógicos y microcontroladores, por lo que es muy adecuado para ellos estudiar integrados. El propio Embedded se desarrolló a partir de microcontroladores, pero los microcontroladores no vienen con un sistema operativo. Ahora muchas aplicaciones integradas se están volviendo cada vez más complejas y tienen que introducir sistemas operativos integrados. Además, para lograr una mayor velocidad de procesamiento de señales, muchas empresas ahora utilizan hardware para implementar algunos algoritmos DSP, como los algoritmos de compresión y descompresión MPEG, en algunas situaciones con requisitos de alta velocidad. Esto involucra la tecnología de diseño de circuitos digitales HDL y su FPGA. /La tecnología de implementación central IP actualmente escasea en el mercado.