This site has been retired. For up to date information, see handbook.gnome.org or gitlab.gnome.org.


[Home] [TitleIndex] [WordIndex

1. Nautilus I/O Operation Management Rework

1.1. Abstract

Currently, I/O operations are largely unmanaged, allowing a large number of them to be running concurrently, which increases the amount of random I/O performed by the disk. That can lead to poor performance. While GTask rate-limits the tasks, it cannot be assumed that GLib will always do that and thus Nautilus would benefit from having a mechanism to control the execution of its tasks. That, along with rewriting the operations in a more object-oriented manner will result in better performance and maintainability.

1.2. Timetable

Period

Deliverable

May 30 – June 13

Task interface

Task management API

Complete port of a single file operation

June 13 – June 20

Progress notification signaling

June 20 – July 4

Complete port of a single cache operation

Phase 1 evaluation

July 4 – July 11

Complete port of search operations

July 11 – July 18

Complete port of thumbnailing

July 18 – August 1

Complete port of cache operations

Phase 2 evaluation, GUADEC

August 8 – August 15

Scheduling capabilities in task manager

1.3. Detailed Plan

TODO


2024-10-23 11:28