1- When I pick a (cortex-A / M) processor/board from vendor1 and learn how to program it , then I want to switch to vendor2 (cortex-A / M) processor/board will I need to re-learn how to use the peripherals?
2- If I learned a cortex-M processor programming will that help me learn cortex-A programming ? my guess is that cortex-A run on an OS and thus its programming is somewhat similar to desktop programming? yes?
3- are peripherals physically inside the processor chip (and its specs is part of arm specs) or they are in separate chip on the board? I think that they are inside the chip and vendor specific , in other words those are not part of the arm specs but rather "addons" by the vendor. right?
thank you
1: Yes, peripherals are vendor-specific:
https://community.arm.com/developer/tools-software/tools/f/keil-forum/43684/lpc2148-timer0-not-working-as-expected/158950#158950
EDIT: as already covered in your previous question:
https://community.arm.com/developer/ip-products/f/infrastructure-solutions/49417/is-c-programming-standard-for-all-arm-chips/172383#172383
2. In general, Yes: 'M' is for "Microcontroller"; 'A' is for "Application" - but some "microcontroller" project use an OS (or, more likely, RTOS), and it's possible to do "bare metal" on 'A'
3. It depends - especially when you come to things like radio subsystems. The terms "SoC" and "SiP" are sometimes used:
Generally, it makes no difference to the programmer.
Sometimes the terms are mis-applied
FYI, I am not affiliated with nor sponsored by ARM.