This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
user_space [2017/03/02 20:17] admin |
user_space [2017/03/03 09:42] (current) admin |
||
|---|---|---|---|
| Line 3: | Line 3: | ||
| It's what you read on the label. A space for the user. This space is provided by the operating system. At its core; the kernel you are about to write.\\ | It's what you read on the label. A space for the user. This space is provided by the operating system. At its core; the kernel you are about to write.\\ | ||
| - | This is extremely basic and low level. Within [[user space]] you will, for example, have access to files and (if done correctly) you will not have to worry about allocating physical memory or talking directly to hardware (like disk or USB or what have you). The only reason you have this access is that the operating system have defined what the file system //is//. Any call to reference the file system will be a call to the operating system to do the work of figuring our what the user space code wants. This is the part we will create.\\ | + | This is extremely basic and low level. Within user space you will, for example, have access to files and (if done correctly) you will not have to worry about allocating physical memory or talking directly to hardware (like disk or USB or what have you). The only reason you have this access is that the operating system have defined what the file system //is//. Any call to reference the file system will be a call to the operating system to do the work of figuring our what the user space code wants. This is the part we will create.\\ |
| \\ | \\ | ||
| - | What you have enbarked upon is the most basic and low level functionality of a computer.\\ | + | What you have embarked upon is the most basic and low level functionality of a computer.\\ |
| \\ | \\ | ||
| **Food for thought**\\ | **Food for thought**\\ | ||
| - | In Linux, any periferal like a USB port or disk or serial port or even a device driver to emulate whatever will be visible in the file directory tree.\\ | + | In Linux, any peripheral like a USB port or disk or serial port or even a device driver to emulate whatever will be visible in the file directory tree.\\ |
| - | If you want a random number generator, Linux have one that is useable as if it was a disk drive. You read it, and it will yield a random number every time. For a [[user space]] program, it will look like a disk that always returns random numbers. Or a memory location that always return random numbers. For Linux, it's all the same in user space.\\ | + | If you want a random number generator, Linux have one that is usable as if it was a disk drive. You read it, and it will yield a random number every time. For a user space program, it will look like a disk that always returns random numbers. Or a memory location that always return random numbers. For Linux, it's all the same in user space.\\ |
| This is what Linux do. What will you do? What is your user space interface?\\ | This is what Linux do. What will you do? What is your user space interface?\\ | ||
| It's all up to you down to the most extreme detail. | It's all up to you down to the most extreme detail. | ||