当前位置:网站首页>26、 File system API (device sharing between applications; directory and file API)
26、 File system API (device sharing between applications; directory and file API)
2022-07-05 05:23:00 【[T]】
One 、 Sharing between devices and Applications
terminal
1、 Multiple processes print in parallel , How to ensure no confusion
2、 Multiple processes read in parallel , There will be competition
GPU(CUDA)
1、 Every CUDA Applications are a series CUDA Of API call
2、 All drivers realize scheduling ( Isolation )
Disks need to support data persistence
1、 Application data
(1) Executable files and dynamic link libraries
2、 User data
3、 system data
(1)manpage
(2) The system configuration
Two 、 file system : Virtual disk
The goal is :
1、 Provide reasonable API Enable multiple applications to share data
2、 Provide some isolation , Make malicious / Mistakes don't run away in large numbers
The storage device ( Byte sequence ) Virtualization of
1、 disk (I/O equipment )= A sequence of bytes that can be read and written
2、 Virtual disk ( file )= A dynamic byte sequence that can be read and written
(1) Name Management
The name of the virtual disk , Retrieval and convenience
(2) Data management
Random access ( Reading and writing )
3、 ... and 、 Virtual disk : Command management
Locality of information : Set the virtual disk ( file ) Organized into a hierarchy
1、 Directory tree
Root of directory
1、Windows
C:\Program Files\
D:\User
2、Unix/Linux
(1) There is only one root
/home/xxx
3、 Splicing of directory tree
Unix: Allow any directory ” mount “ A directory tree represented by a device
(1) You can mount the device anywhere
mount system call
int mount(const char *source, const char *target,
const char *filesystemtype, unsigned long mountflags,
const void *data);mount /dev/sdb /mnt
umount mnt
Four 、Linux Startup process
Linux-minimal Running on the ‘initramfs’ Pattern
1、Linux-minimal Start process
export PATH=/bin
busybox mknod /dev/sda b 8 0
busybox mkdir -p /newroot
busybox mount -t ext2 /dev/sda /newroot # take /dev/sda The device is mounted on /newroot
exec busybox switch_root /newroot/ /etc/init2、 File mount
file = Virtual disk on disk
Mount the file = Virtual disk created on virtual disk
(1)Linux Treatment mode
Create a loopback( Loop ) equipment
The device driver drives the device read/write Translated into documents read/write
Use lsblk Check... In the system block devices(strace)
strace View the process of mounting
ioctl(3, LOOP_CTL_GET_FREE)
ioctl(4, LOOP_SET_FD, 3)5、 ... and 、 Directory management
1、mkdir
(1) Create a directory
(2) You can set permissions
2、rmdir
(1) Delete an empty directory
(2) No, ” Recursive delete “ System call
rm -rf Traverse delete
6、 ... and 、 Hard links
demand : There are multiple versions of the same runtime
Using a link can avoid a copy
7、 ... and 、 Soft link
Soft link : Store a jump prompt in the file
1、 Soft link is also a file
(1) When referencing this document , Find another file
(2) Can cross file systems , You can link to a directory
边栏推荐
- Three dimensional dice realize 3D cool rotation effect (with complete source code) (with animation code)
- Collapse of adjacent vertical outer margins
- Page countdown
- 第六章 数据流建模—课后习题
- [allocation problem] 135 Distribute candy
- 2022/7/1學習總結
- lxml.etree.XMLSyntaxError: Opening and ending tag mismatch: meta line 6 and head, line 8, column 8
- [depth first search] 695 Maximum area of the island
- Zheng Qing 21 ACM is fun. (3) part of the problem solution and summary
- Grail layout and double wing layout
猜你喜欢

Romance of programmers on Valentine's Day

Magnifying glass effect
![[to be continued] [depth first search] 547 Number of provinces](/img/c4/b4ee3d936776dafc15ac275d2059cd.jpg)
[to be continued] [depth first search] 547 Number of provinces
![[to be continued] [UE4 notes] L1 create and configure items](/img/20/54ba719be2e51b7db5b7645b361e26.jpg)
[to be continued] [UE4 notes] L1 create and configure items

Grail layout and double wing layout

Binary search basis

SAP-修改系统表数据的方法

嵌入式数据库开发编程(五)——DQL

第六章 数据流建模—课后习题

Embedded database development programming (VI) -- C API
随机推荐
High precision subtraction
Haut OJ 1401: praise energy
Insert sort
Haut OJ 1241: League activities of class XXX
Acwing 4301. Truncated sequence
64 horses, 8 tracks, how many times does it take to find the fastest 4 horses at least
Magnifying glass effect
[to be continued] [UE4 notes] L2 interface introduction
UE fantasy engine, project structure
Haut OJ 2021 freshmen week II reflection summary
C语言杂谈1
Heap sort summary
Solon 框架如何方便获取每个请求的响应时间?
[merge array] 88 merge two ordered arrays
Simple modal box
Add level control and logger level control of Solon logging plug-in
Development error notes
《动手学深度学习》学习笔记
win下一键生成当日的时间戳文件
被舆论盯上的蔚来,何时再次“起高楼”?