Any one could be fine to explain their role ?
The IPNC update file holds the main application and it's very many supporting files.
These include drivers for sensors, kernel extensions specific to the hardware, lots of small programs and scripts and data files that support the main application.
The term 'kernel' generally applies to the core Linux operating system that provides the 'engine' for all the programs that operate in a fully-booted system.
In this specific case, though, the 'kernel' part of the firmware update also includes some of the more basic components of the environment that prepare and describe the hardware and make it ready for the kernel to boot into.
In the 'kernel' part of the update are included the 'bootstrap', which is the first software to run at power-on. It loads up the 'bootloader' which sets up the hardware ready to then load up the 'kernel' which provides the running operating system for the applications to execute under.
There is also a data segment that holds the low-level hardware definition information that the bootloader and kernel require as part of their operation.
There is a close connection between modules and drivers and the kernel itself, which is why when a module or driver changes, and updated kernel is also required.
Shown below is an example of those components in extracted form from the firmware distribution :
Code:
alastair@PC-I5 ~/cctv/Huisun/camerafirmware/IPNC_S2l2.1.1_build20161229101557 $ ll
total 6440
drwxr-xr-x 4 alastair alastair 4096 Aug 24 19:39 ./
drwxr-xr-x 14 alastair alastair 4096 May 6 08:55 ../
drwxr-xr-x 2 alastair alastair 4096 Jan 16 2017 contents/
-rw-r--r-- 1 alastair alastair 3140567 Jan 16 2017 IPNC_S2l2.1.1_build20161229101557.zip
drwxr-xr-x 2 alastair alastair 4096 Jan 16 2017 kernel/
-rw-rw-r-- 1 alastair alastair 1714410 Nov 23 2016 package.bin
-rw-r--r-- 1 alastair alastair 907 Jan 16 2017 'Upgrade Notes.txt'
-rw-r--r-- 1 alastair alastair 1713532 Jan 16 2017 UPG_S_Kernel_201611231524.zip
alastair@PC-I5 ~/cctv/Huisun/camerafirmware/IPNC_S2l2.1.1_build20161229101557 $ ll contents
total 6572
drwxr-xr-x 2 alastair alastair 4096 Jan 16 2017 ./
drwxr-xr-x 4 alastair alastair 4096 Aug 24 19:39 ../
-rw-r--r-- 1 alastair alastair 12555 Dec 5 2016 ar0130.ko
-rw-r--r-- 1 alastair alastair 22764 Jun 22 2016 ar0230.ko
-rw-r--r-- 1 alastair alastair 101990 Jun 8 2016 exfat.ko
-rw-r--r-- 1 alastair alastair 35640 Jul 22 2016 fsck.vfat
-rw-r--r-- 1 alastair alastair 1373 Dec 29 2016 index.ini
-rw-r--r-- 1 alastair alastair 2264481 Dec 29 2016 ipnc.tgz
-rw-r--r-- 1 alastair alastair 239072 Jul 12 2016 M342_MiniPtz.bin
-rw-r--r-- 1 alastair alastair 250852 Nov 1 2016 M342_ZoomCam.bin
-rw-r--r-- 1 alastair alastair 44680 Jul 22 2016 mkfs.vfat
-rw-r--r-- 1 alastair alastair 3141154 Dec 29 2016 package.bin
-rwxr-xr-x 1 alastair alastair 21303 Sep 1 2016 S90ipnc*
-rw-r--r-- 1 alastair alastair 13512 Aug 2 2016 STM32F030F4_MiniPtz.bin
-rw-r--r-- 1 alastair alastair 10284 Oct 18 2016 STM32F030F4_PtContrl.bin
-rw-r--r-- 1 alastair alastair 535829 Dec 29 2016 web.tgz
alastair@PC-I5 ~/cctv/Huisun/camerafirmware/IPNC_S2l2.1.1_build20161229101557 $ ll kernel
total 3736
drwxr-xr-x 2 alastair alastair 4096 Jan 16 2017 ./
drwxr-xr-x 4 alastair alastair 4096 Aug 24 19:39 ../
-rwxr--r-- 1 alastair alastair 196608 Nov 23 2016 bld.bin*
-rwxr--r-- 1 alastair alastair 65536 Nov 23 2016 bst.bin*
-rw-r--r-- 1 alastair alastair 424 Nov 23 2016 index.ini
-rw-r--r-- 1 alastair alastair 1714410 Nov 23 2016 package.bin
-rwxr--r-- 1 alastair alastair 1769472 Nov 23 2016 pri.bin*
-rwxr--r-- 1 alastair alastair 65536 Nov 23 2016 ptb.bin*
alastair@PC-I5 ~/cctv/Huisun/camerafirmware/IPNC_S2l2.1.1_build20161229101557 $