Cherreads

Chapter 26 - Drive (1)

Jack had just finished testing Linked templates with his laptop when Madison came out into the living room. She was wearing her trademark baggy jeans and dress sized hoody. She had already finished eating when he came out of the bathroom, and he had expected her to take a long time to get ready, but when he checked the time, he saw that it only took her about half an hour.

"I'm ready whenever you are," she said as she stopped in front of him.

He closed the lid on his laptop and set it aside before getting up from the couch. Then he turned and headed towards the kitchen and the entrance to the garage, expecting Madison to follow. As he was climbing into the driver's seat, he felt a spike of annoyance from Madison. As he sat, he turned to look at her. She opened her mouth, then closed it, then opened and closed it several more times, annoyance growing. He realized she was trying to ask him a question, but the soul bond was preventing it.

He had not expected that it would prevent her from speaking about the Genesis Heart even in private. But on reflection realized that this was a reasonable safety measure. Just because they thought they were alone, did not mean that they were unobserved. The only place they could have truly private conversations was in his soul space.

He searched his interface and found a section that contained information about her Genesis Heart access and permissions. He found that the default was for her to have no access and no permissions. So, he made adjustments so that she could enter and leave as she wished and could enable parallel self on her own. He didn't grant her access to Linked Self yet because he didn't know what costs were associated.

As soon as he granted her access to parallel self, she said, "Oh!" then appeared in the soul space next to his own parallel self. Immediately after than she said, "Oof, that is trippy and kinda disconcerting."

"Yep, like looking at yourself in parallel mirrors, right?"

"Yeah, it's kinda distracting."

"It's fine as long as you're not looking at yourself," he suggested.

"Ah, that's better," said her physical self, and at the same time, her parallel self said, "Oh hey, is that your laptop? Did you test Linked templates yet?"

While he focused on driving, and she stared out the window, they also continued to have a conversation in his soul space.

"Yeah, I just finished doing some tests. I had hoped that I could get it to work like the continuous memory sync does for our parallel selves, but no dice. Though, it's still better than nothing."

"So, no automatic conflict resolution?" she asked. "You'd think that, given how complex the human brain is, that it would be even easier to sync a laptop."

"No, not automatic merging. And, I don't think it has anything to do with complexity. I think it's just the nature of the feature."

"So, how does it work?"

"Normally, you can create multiple instances of a template at the same time."

"Wait, like I could create hundreds of instances of my laptop, all running at the same time in your soul space?"

"Yup. I tried it. It works."

"Awesome! I bet I could-"

"Ahem! As I was saying..." Jack interrupted Madison because he could tell she was about to go off on some techno-babble tangent.

"...in normal mode, you can create multiple instances, but when you enable Linked Template the template gets converted into a special instance. You can't make multiple copies any more, and can only pause and resume that single instance. So, the template become a special instance and any changes to it can then be exported to the linked physical object. In normal mode the template can be updated from the physical object without effecting any exiting instances. But in Linked Template mode, when you update from the physical object, any changes in the special instance are lost, overwritten from the physical object."

"So," she said, "in Linked Template mode import from physical world to soul space of a complete overwrite, but export from soul space to physical world is a delta write?"

"Yes, as far as I can tell, that's what happens. Import forces the template to match the physical object, export applies only the changes."

"That's weird," she said. "Why would import overwrite? Why not apply a delta patch in both directions?"

"I have no idea. All I know is import is safe, but export is dangerous, at least for laptops."

"Dangerous, how?" she asked.

"If the laptop is on when the export happens, it crashes, and depending on the changes made, it might also result in file system corruption."

"What? Why would that- Oh, wait. It's operating at a physical level, not an informational one."

"Yup, at least as far as I can tell. I think it's altering the physical state of the laptop, so it's not altering files, or even flipping individual bits, but changing the physical state of individual cells in the NAND flash chips for the SSD or altering the electrical state of individual transistors in the CPU."

"Right, so if you do the export while the laptop is running, any externally induced change to transistors in the CPU will cause logic errors and thus the crash."

"Yep, that's my guess," he replied. "And if it's altering the physical state of individual cells in the SSD NAND flash chips, then there is no way to resolve conflicting changes. Last update wins."

"Yes. And if separate changes in physical and soul space versions both alter the same block of cells, but in different ways, the result could be filesystem corruption or worse."

"Worse?" he asked.

"Sure. What if there's some data structure that is internal to the SSD, that your filesystem cleanup utility cannot touch? If there are conflicting changes there, your drive might get bricked."

"Shit, I hadn't thought about that. Good thing I only did a few tests. I can't afford to buy a new laptop."

"Oh, it's not that bad," she said. "Worst-case scenario is you'd have to boot from a recovery image and re-format your SSD. You'd lose whatever was on the drive, but you'd still be able to use your laptop."

"Okay, that's almost as bad, but better than having to buy a new laptop. Anyway, I figure the safest solution is to just have two separate thumb drives, one for going into my soul space, and the other for going out of my soul space. That way, there is no risk of conflicts."

"Sure, that sounds like it will work. Just make sure to pull the thumb drives so the update happens while the drives are unpowered."

"Right, that makes sense. Though, it sucks because I wanted to be able to bring my phone into my soul space as well."

"Well, you still can. You just have to make sure you only pull updates into your soul space and never push changes back out. Also, I think I could come up with a hardware design that would make it easier to transfer data back and forth. Something that takes into account the nature of Linked Templates."

"That would be nice. I realize we won't be able to get full Internet access, but being able to at least do regular data transfers would be nice."

More Chapters