• 0 Posts
  • 42 Comments
Joined 1 year ago
cake
Cake day: July 1st, 2023

help-circle
  • The easiest way to disable unnecessary services is to uninstall them with aptitude, or whichever package manager you like. Try terminating services one by one, and see if anything bad happens. If nothing bad happens, you can probably uninstall it. On the other hand, if the system does get wonky a reboot should fix it. Or, you can research the services by name and decide whether to uninstall them. (avahi-daemon for example is a good idea to uninstall.)

    To make the GUI not run, uninstall your display manager (gdm, xdm, nodm, or whatever) and uninstall your xorg server or wayland server. There may be GUI programs remaining after that, but they will only be consuming disk space, not RAM or CPU.

    If the battery is old and holds little charge, you may save a few watts by removing it and throwing it away, instead of letting the system keep it topped off.

    Get a power meter, such as a Kill-a-watt device. Then, experiment with different settings. If it’s consuming less than 30 watts, you’re probably fine. If you live in the US, one watt-year is about one US dollar (or a little more), so for every watt it consumes, that’s about how much you will pay per year for its electricity.


  • Looks like this program is really old. It appears to be designed for a 32-bit system, the way it casts between unsigned int and pointers.

    unsigned int is probably 32-bit even on your 64-bit system, so you’re only printing half the pointer with the printf, and only scanning half the pointer with the scanf. The correct data type to be using for this is uintptr_t , which is the same as uint32_t on a 32-bit system, and the same as uint64_t on a 64-bit system.

    Try changing the type of addr to uintptr_t , and change lines 14-17 to this:

    	printf("Address of main function: %p\n", (void *) &main);
    	printf("Address of addr variable: %p\n", (void *) &addr);
    	printf("\nEnter a (hex) address: ");
    	scanf("%p", &addr);
    

    You may have to include <stdint.h> . These changes should make the code portable to any 32-bit or 64-bit architecture.


  • NTFS is considered pretty stable on Linux now. It should be safe to use indefinitely.

    If you’re worried about the lack of Unix-style permissions and attributes in NTFS, then getting BTRFS or ext4 on Windows may be a good choice. Note that BTRFS is much more complicated than ext4, so ext4 may have better compatibility and lower risk of corruption. I used ext3 on Windows in 2007 and it was very reliable; ext4 today is very similar to ext3 from those days.

    The absolute best compatibility would come from using a filesystem natively supported by both operating systems, developed without reverse engineering. That leaves only vfat (aka FAT32) and exfat. Both lack Unix-style permissions and attributes.