├── .gitignore ├── 01-hellodriver ├── Makefile ├── README.md └── example.c ├── 02-CharacterDevice ├── Makefile ├── README.md └── example.c ├── 03-UserKernelDataAccess ├── Makefile ├── README.md └── example.c ├── 04-DynamicRegister ├── Makefile └── example.c ├── 05-PrintkMessageLevel ├── Makefile └── example.c ├── 06-PrivateData ├── Makefile └── example.c ├── 07-AutoMakeNode ├── Makefile └── example.c ├── 08-Kprobe ├── Makefile └── kprobe-example-close.c ├── 09-Lock ├── Makefile └── example.c ├── 10-IOCTL ├── Makefile ├── example.c ├── test-application │ └── main.c └── test_ioctl.h ├── 11-DevicePackagedData ├── Makefile ├── example.c ├── test-application │ └── main.c └── test_ioctl.h ├── 12-Multiplexing ├── Makefile ├── example.c ├── test-application │ └── main.c └── test_ioctl.h ├── 13-Lseek ├── Makefile ├── example.c ├── test-application │ └── main.c └── test_ioctl.h ├── 14-AccessFileInModule ├── Makefile ├── example.c └── test_ioctl.h ├── 15-ExportSymbol ├── Export │ ├── Makefile │ └── example.c ├── UseExport │ ├── Makefile │ └── useexample.c └── auto.sh ├── 16-Framework ├── Framework │ ├── Makefile │ ├── example.c │ └── example.h ├── UseFramework │ ├── Makefile │ ├── somedevice.h │ ├── useexample.c │ └── useexample.h ├── auto.sh └── test-application │ ├── Makefile │ └── main.c ├── 17-GPIO_Interrupt ├── Makefile ├── README.md └── ledbutton.c ├── 18-Cypto ├── Makefile └── mycrypto.c └── README.md /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/.gitignore -------------------------------------------------------------------------------- /01-hellodriver/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/01-hellodriver/Makefile -------------------------------------------------------------------------------- /01-hellodriver/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/01-hellodriver/README.md -------------------------------------------------------------------------------- /01-hellodriver/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/01-hellodriver/example.c -------------------------------------------------------------------------------- /02-CharacterDevice/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/02-CharacterDevice/Makefile -------------------------------------------------------------------------------- /02-CharacterDevice/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/02-CharacterDevice/README.md -------------------------------------------------------------------------------- /02-CharacterDevice/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/02-CharacterDevice/example.c -------------------------------------------------------------------------------- /03-UserKernelDataAccess/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/03-UserKernelDataAccess/Makefile -------------------------------------------------------------------------------- /03-UserKernelDataAccess/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/03-UserKernelDataAccess/README.md -------------------------------------------------------------------------------- /03-UserKernelDataAccess/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/03-UserKernelDataAccess/example.c -------------------------------------------------------------------------------- /04-DynamicRegister/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/04-DynamicRegister/Makefile -------------------------------------------------------------------------------- /04-DynamicRegister/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/04-DynamicRegister/example.c -------------------------------------------------------------------------------- /05-PrintkMessageLevel/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/05-PrintkMessageLevel/Makefile -------------------------------------------------------------------------------- /05-PrintkMessageLevel/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/05-PrintkMessageLevel/example.c -------------------------------------------------------------------------------- /06-PrivateData/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/06-PrivateData/Makefile -------------------------------------------------------------------------------- /06-PrivateData/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/06-PrivateData/example.c -------------------------------------------------------------------------------- /07-AutoMakeNode/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/07-AutoMakeNode/Makefile -------------------------------------------------------------------------------- /07-AutoMakeNode/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/07-AutoMakeNode/example.c -------------------------------------------------------------------------------- /08-Kprobe/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/08-Kprobe/Makefile -------------------------------------------------------------------------------- /08-Kprobe/kprobe-example-close.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/08-Kprobe/kprobe-example-close.c -------------------------------------------------------------------------------- /09-Lock/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/09-Lock/Makefile -------------------------------------------------------------------------------- /09-Lock/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/09-Lock/example.c -------------------------------------------------------------------------------- /10-IOCTL/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/10-IOCTL/Makefile -------------------------------------------------------------------------------- /10-IOCTL/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/10-IOCTL/example.c -------------------------------------------------------------------------------- /10-IOCTL/test-application/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/10-IOCTL/test-application/main.c -------------------------------------------------------------------------------- /10-IOCTL/test_ioctl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/10-IOCTL/test_ioctl.h -------------------------------------------------------------------------------- /11-DevicePackagedData/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/11-DevicePackagedData/Makefile -------------------------------------------------------------------------------- /11-DevicePackagedData/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/11-DevicePackagedData/example.c -------------------------------------------------------------------------------- /11-DevicePackagedData/test-application/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/11-DevicePackagedData/test-application/main.c -------------------------------------------------------------------------------- /11-DevicePackagedData/test_ioctl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/11-DevicePackagedData/test_ioctl.h -------------------------------------------------------------------------------- /12-Multiplexing/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/12-Multiplexing/Makefile -------------------------------------------------------------------------------- /12-Multiplexing/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/12-Multiplexing/example.c -------------------------------------------------------------------------------- /12-Multiplexing/test-application/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/12-Multiplexing/test-application/main.c -------------------------------------------------------------------------------- /12-Multiplexing/test_ioctl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/12-Multiplexing/test_ioctl.h -------------------------------------------------------------------------------- /13-Lseek/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/13-Lseek/Makefile -------------------------------------------------------------------------------- /13-Lseek/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/13-Lseek/example.c -------------------------------------------------------------------------------- /13-Lseek/test-application/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/13-Lseek/test-application/main.c -------------------------------------------------------------------------------- /13-Lseek/test_ioctl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/13-Lseek/test_ioctl.h -------------------------------------------------------------------------------- /14-AccessFileInModule/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/14-AccessFileInModule/Makefile -------------------------------------------------------------------------------- /14-AccessFileInModule/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/14-AccessFileInModule/example.c -------------------------------------------------------------------------------- /14-AccessFileInModule/test_ioctl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/14-AccessFileInModule/test_ioctl.h -------------------------------------------------------------------------------- /15-ExportSymbol/Export/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/15-ExportSymbol/Export/Makefile -------------------------------------------------------------------------------- /15-ExportSymbol/Export/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/15-ExportSymbol/Export/example.c -------------------------------------------------------------------------------- /15-ExportSymbol/UseExport/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/15-ExportSymbol/UseExport/Makefile -------------------------------------------------------------------------------- /15-ExportSymbol/UseExport/useexample.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/15-ExportSymbol/UseExport/useexample.c -------------------------------------------------------------------------------- /15-ExportSymbol/auto.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/15-ExportSymbol/auto.sh -------------------------------------------------------------------------------- /16-Framework/Framework/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/Framework/Makefile -------------------------------------------------------------------------------- /16-Framework/Framework/example.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/Framework/example.c -------------------------------------------------------------------------------- /16-Framework/Framework/example.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/Framework/example.h -------------------------------------------------------------------------------- /16-Framework/UseFramework/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/UseFramework/Makefile -------------------------------------------------------------------------------- /16-Framework/UseFramework/somedevice.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/UseFramework/somedevice.h -------------------------------------------------------------------------------- /16-Framework/UseFramework/useexample.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/UseFramework/useexample.c -------------------------------------------------------------------------------- /16-Framework/UseFramework/useexample.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/UseFramework/useexample.h -------------------------------------------------------------------------------- /16-Framework/auto.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/auto.sh -------------------------------------------------------------------------------- /16-Framework/test-application/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/test-application/Makefile -------------------------------------------------------------------------------- /16-Framework/test-application/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/16-Framework/test-application/main.c -------------------------------------------------------------------------------- /17-GPIO_Interrupt/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/17-GPIO_Interrupt/Makefile -------------------------------------------------------------------------------- /17-GPIO_Interrupt/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/17-GPIO_Interrupt/README.md -------------------------------------------------------------------------------- /17-GPIO_Interrupt/ledbutton.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/17-GPIO_Interrupt/ledbutton.c -------------------------------------------------------------------------------- /18-Cypto/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/18-Cypto/Makefile -------------------------------------------------------------------------------- /18-Cypto/mycrypto.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/18-Cypto/mycrypto.c -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/starnight/DriverPractice/HEAD/README.md --------------------------------------------------------------------------------