acassis opened a new issue, #20414:
URL: https://github.com/apache/nuttx/issues/20414

   ### Description
   
   I'm investigation why NuttX became so big in the last years and here are 
some info:
   
   ```
     
┌────────────────────────────────────────────────┬────────┬────────┬────────┐
     │              Build (code + data)               │  2016  │ Today  │ 
Growth │
     
├────────────────────────────────────────────────┼────────┼────────┼────────┤
     │ ARM stm32f103-minimum:nsh                      │  38.8  │  52.4  │   
+35% │
     │                                                │     KB │     KB │       
 │
     
├────────────────────────────────────────────────┼────────┼────────┼────────┤
     │ ARM minimal NSH (2016 minnsh vs today's        │  13.0  │  31.6  │   
×2.4 │
     │ smallest possible)                             │     KB │     KB │       
 │
     
├────────────────────────────────────────────────┼────────┼────────┼────────┤
     │ AVR moteino-mega:nsh (16-bit int, like the     │  49.0  │  73.1  │   
+49% │
     │ 1802)                                          │     KB │     KB │       
 │
     
└────────────────────────────────────────────────┴────────┴────────┴────────┘
   
   ```
   
   And there are the small changes in the last years:
   
   ```
     
┌─────────────────────────────────────────────────────────────────┬─────────┐
     │                          Change (year)                          │  Bytes 
 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ Semaphores rewritten with atomic fast/slow paths (2024)         │   
2,839 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ Every task's file setup goes through posix_spawn file actions   │   
2,474 │
     │ (2023)                                                          │        
 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ Directories opened through the file layer (opendir)             │   
2,148 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ Full _assert and panic path                                     │   
1,973 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ All I/O goes through readv/writev vectors (2024)                │   
1,942 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ Growable file-descriptor table (2021)                           │   
1,911 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ Delayed-free list in the heap (2023)                            │   
1,032 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ Read/write lock for the file-system tree (2024)                 │     
749 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ Memory-mapping tables (2022)                                    │     
279 │
     
├─────────────────────────────────────────────────────────────────┼─────────┤
     │ Total                                                           │  ≈15.3 
 │
     │                                                                 │      
KB │
     
└─────────────────────────────────────────────────────────────────┴─────────┘
   ```
   
   ### Verification
   
   - [x] I have verified before submitting the report.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to