I am developing a high performance database and I want to write directly to a specific track/cylinder with multiple heads at the same time. How is this done in Linux with SATA disks through the SATA bus? Any docs, examples you could recommend?
write on track / head / cylinder on a magentic disk
164 views Asked by Nulik At
1
There are 1 answers
Related Questions in C
- How to call a C language function from x86 assembly code?
- What does: "char *argv[]" mean?
- User input sanitization program, which takes a specific amount of arguments and passes the execution to a bash script
- How to crop a BMP image in half using C
- How can I get the difference in minutes between two dates and hours?
- Why will this code compile although it defines two variables with the same name?
- Compiling eBPF program in Docker fails due to missing '__u64' type
- Why can't I use the file pointer after the first read attempt fails?
- #include Header files in C with definition too
- OpenCV2 on CLion
- What is causing the store latency in this program?
- How to refer to the filepath of test data in test sourcecode?
- 9 Digit Addresses in Hexadecimal System in MacOS
- My server TCP doesn't receive messages from the client in C
- Printing the characters obtained from the array s using printf?
Related Questions in LINUX-KERNEL
- Android kernel error: undefined reference to `get_hw_version_platform'
- Is there a need for BPF Linux namespace?
- Facing fatal errors while running "yum update" command on CentOS 7/Cloudlinux 7
- crash utility itself crashes while decoding kdump generated from null pointer dereference in kernel module
- How to compile the Linux kernel with -O0 for more detailed debug?
- Linux support for parallel Pixel data Image sensor
- Can't upgrade to newest version of linux-image-6.5.0-26-generic
- How to protect a page so that it cannot be write in mips arch?
- How to extract the .img file into normal kernel source file in the linux?
- Storage size of struct hash_desc desc; isn't known
- How can I intercept failed file openning calls?
- struct nameidata-Linux Kernel Module
- How to modify a 'struct msghdr' in Linux Kernel Module?
- How to allocate 500MB+ physically contiguous memory in a Linux kernel module and copy data to that memory from a userspace process?
- Hyper Threading: nosmt in grub configuration
Related Questions in DISK
- I have unallocated space in my C drive. I want to make it primary partition but it is being created as logical partition
- An issue where memory peaks abnormally and then normalizes again
- Run python script with disk as RAM
- GetVolumeInformationA returns no value for local disk
- GCP Cloud Sql (Postgres) simple select queries exceed disk read quota
- Does a physical filesystem works only for a specific type of storage media?
- My USB's corrupted post creating Windows boot USB on Ubuntu. Can't format.?
- How do I get my VM to pip install dependencies on my attached disk?
- Tinymce upload images to google cloud
- Are there any ways to set disk size limit for each docker container?
- How do I find the EFI partition on a Dynamic disk using PowerShell?
- Can't delete VM "Error: 'Error accessing storage"
- GCP Python get disk infromation
- "$Bitmap size is smaller than expected" when shrinking a partition image with ntfsresize
- Is there a way to monitor computer memory for a file to be loaded and then execute a different process to act on the file?
Related Questions in SATA
- HDD Storage with AHCI configuration is taking long time to respond to ATA commands
- SCSI commands that can benefit from a full duplex SAS connection
- CPU, Disk, RAM, Ethernet Data Flow
- How do I send commands to NVMe drive over USB bridge?
- SATA controller
- print_req_error: critical target error, dev sdb, sector 0
- Does Linux 3.1 support Intel Optane?
- Linux scsi ata cmd write or read sometimes work and sometimes didn't work when transfer length is over 1345
- Is there a way to override libata.force during runtime?
- Accessing block device data beyond reported capacity
- Writing binary files (~12MB) consecutively very fast (30 per second) from a C++ program in Linux
- How to emulate a SATA disk drive in QEMU
- Need Script To Automatically Restart Mac Until Negotiated SATA Link Speed is SATA II
- Folder is empty while data transfer Sata Hard Drive From Laptop Into USB External Enclosure
- SATA driver; AHCI port initialisation; Start (ST) command list;
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
You cannot directly do this. With modern drives the physical drive layout is abstracted away by the drive controller, which for any disk made in the last 20 years is inside the drive itself. The interface seen by the host computer is defined in terms of linear logical block addresses (the C/H/S values reported by the drive are for compatibility only and bear no relation to the hardware layout).
However, it is likely that (in the absence of remapped blocks) simply writing blocks of adjacent logical blocks is the fastest option - that's because drives tend to be optimised to perform fast linear writes.