Being an Cisco IOS guy first (yes Cisco coined the IOS acronym before Apple), then a Cisco CatOS guy (running on the Cisco Catalyst switches), then working with other vendor platforms that were “IOS like”, over the last 20 years I got pretty accustomed to working with Cisco router and switch OSs. You might have even said I was an “expert” working with the CLI and navigating setting up all the protocols. When it came time to upgrade code, it was easy-peasy. Download the IOS .bin file from CCO, copy the code to the device, update the boot system command to reload the new .bin file at reboot. Easy. Oh yeah, on the 6500s and 7600s we also need to download the matching FPD packages and make sure the router/switch booted the you had to download. And sometimes update ROMMON, hardware modules, etc.