Misplaced Pages

:Reference desk/Computing - Misplaced Pages

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
< Misplaced Pages:Reference desk

This is an old revision of this page, as edited by Russell.mo (talk | contribs) at 18:19, 20 July 2016 (Mouse cursor/icon making software sought). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Revision as of 18:19, 20 July 2016 by Russell.mo (talk | contribs) (Mouse cursor/icon making software sought)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)


Welcome to the computing section
of the Misplaced Pages reference desk. skip to bottom Select a section: Shortcut Want a faster answer?

Main page: Help searching Misplaced Pages

   

How can I get my question answered?

  • Select the section of the desk that best fits the general topic of your question (see the navigation column to the right).
  • Post your question to only one section, providing a short header that gives the topic of your question.
  • Type '~~~~' (that is, four tilde characters) at the end – this signs and dates your contribution so we know who wrote what and when.
  • Don't post personal contact information – it will be removed. Any answers will be provided here.
  • Please be as specific as possible, and include all relevant context – the usefulness of answers may depend on the context.
  • Note:
    • We don't answer (and may remove) questions that require medical diagnosis or legal advice.
    • We don't answer requests for opinions, predictions or debate.
    • We don't do your homework for you, though we'll help you past the stuck point.
    • We don't conduct original research or provide a free source of ideas, but we'll help you find information you need.


Ready? Ask a new question!


How do I answer a question?

Main page: Misplaced Pages:Reference desk/Guidelines

  • The best answers address the question directly, and back up facts with wikilinks and links to sources. Do not edit others' comments and do not give any medical or legal advice.
See also:

July 15

File-system, external storage, unsafe removal

Do different file-systems behave differently, when an external storage medium is removed unsafely? That is, it's connected through USB and I just pull it. Would something like ext3 be more reliable than NTFS? Hofhof (talk) 00:43, 15 July 2016 (UTC)

It depends on what features the filesystem has. ext3 and NTFS have rough feature parity—both are journaling file systems—so between those two there's unlikely to be any significant difference. Other features like copy on write (not present in those two file systems) can also prevent filesystem corruption in some situations. It should go without saying that you should not make a habit of unsafely removing storage devices, and no file system features are a substitute for backups. --71.110.8.102 (talk) 02:32, 15 July 2016 (UTC)
Aging of flash memory is caused by writing. So flash memory devices are written as less as possible. Removing the unsafe way may cause a lost of recent updates of the journal. Depending on the file system, when the journal is redundant, it is more robust due copies can be compared to the file it points and the checksum. --Hans Haase (有问题吗) 06:11, 15 July 2016 (UTC)
Here is an interesting (if somewhat old) overview of the journaling behavior of various file systems. ext3 has three journaling modes, and I gather that NTFS's journaling is more or less the same as ext3's middle level ("ordered"). What this means is that you won't end up with a broken filesystem that needs fsck/chkdsk, and you won't end up with random crud (or zeroes) in a file that was never written to it, but you may end up with out-of-order overwrites. That is, if you overwrote data chunks A, B, and C in that order, then yanked the drive too early, you might find that A and C (or even parts of them) made it to the disk and B didn't.
Note that these guarantees apply to disks that support some measure of data integrity in the first place. I've heard horror stories of SSDs being irreversibly damaged by sudden power loss (see ). That's reason enough to stop the drive first, regardless of the file system. I think HDDs are much better in this regard, even the cheaper consumer ones, but repeated sudden power loss may cause long-term damage to them too. -- BenRG (talk) 06:37, 15 July 2016 (UTC)
See SandForce and Write amplification to get an idea how this is working. A typical horror scenarior might be caused when the block is being relocated due its number of rewrites exceeded the maximum specified. If this relocating is a map as well, the question must be asked, where is its repair procedure tool? --Hans Haase (有问题吗) 06:54, 15 July 2016 (UTC)

Keybboard

My keyboard at some point completely ceased to function, and I am now using the super-tedious "on-screen keyboard". I likely bumped or hit something that caused this. My sleep-deprived brain is not working well, but I'm assuming this is a fairly simple issue. Any suggestions? Joefromrandb (talk) 02:04, 15 July 2016 (UTC)

Is that a laptop or desktop? Hofhof (talk) 02:20, 15 July 2016 (UTC)
What operating system are you using? Is this a wireless or wired keyboard? Have you checked that it's plugged in? If it's wireless, does it have working batteries? Have you tried restarting the system? --71.110.8.102 (talk) 02:34, 15 July 2016 (UTC)
It's a laptop. Yes, it's plugged in, and yes I've restarted it. I'm using Windows 10, if that's what you mean. Joefromrandb (talk) 02:45, 15 July 2016 (UTC)
Try to reinstall it using the add hardware wizard to install the driver package. Otherwise, you might need to replace the keyboards. In some laptops is rather easy to remove it. You could also try to remove it, reboot, and to connect it again.Hofhof (talk) 05:28, 15 July 2016 (UTC)
The most common cause of this I've seen is a stuck key/dirt in the keys. It fails a self test at startup and then it's disabled (using Windows, anyway). Just shut off the computer, run your hand back and forth over it a few times so all the keys clatter, and see if you have a keyboard. Wnt (talk) 10:17, 15 July 2016 (UTC)
If your laptop has a removable battery try this: Shut down the laptop, remove the power supply, remove the battery. Wait 1 minute, reinsert the battery, reinsert the power, and start the laptop again. Even when shutdown, laptops often keep the glidepad and keyboard powered up. Doing the above procedure will reset their microcontrollers. Otherwise, you can use an external USB keyboard for the laptop. LongHairedFop (talk) 11:36, 15 July 2016 (UTC)
Thank you both!! Wnt's suggestion worked like a charm. Joefromrandb (talk) 03:39, 17 July 2016 (UTC)
Joefromrandb, see Misplaced Pages:Reference_desk/Archives/Computing/2016_April_22#Throwing_orange_juice_on_a_laptop. I guess one of the keys is cut short, permanently pressed or two lines of the matrx keyboard, each computer keyboard today is, are cut short. --Hans Haase (有问题吗) 08:30, 18 July 2016 (UTC)

July 16

make any page be the website entry

I'm in the process of making my personal website mobile-friendly. I was so glad to find out that adding the "viewport" link was all that was formally required that I just plunged in without much forethought, duplicating files, adding the link to each file, and rearranging the code so it could reasonably be compressed horizontally.

Currently, when html://www.something.com is invoked, control passes to the index.html file. So I should have planned to replace the current index.html with another of the same name. But instead, my new "index" is "arbitrary.html" and I call it with html://www.something.com/arbitrary.html. Unfortunately in each file I also coded a link back to this new home page. There are a couple of hundred files which I would have to edit individually to get it right (that is, link to index.html rather than arbitrary.html).

I did it the wrong way, but the best I could, as an amateur. Is there any way I could save myself through some kind of indirection, so that when "something.com" is entered as the URL, arbitrary.html gets executed? --Halcatalyst (talk) 02:46, 16 July 2016 (UTC)

What you need to implement is URL rewriting. On an Apache server, this is done by editing .htaccess - you'll need to add a line DirectoryIndex arbitrary.html. Tevildo (talk) 09:07, 16 July 2016 (UTC)
Various techniques are listed at URL redirection. The most "amateur" way might be to use the Refresh meta tag: include the tag <meta http-equiv="Refresh" content="0; url=arbitrary.html" /> in the <head> section of index.html. AndrewWTaylor (talk) 10:18, 16 July 2016 (UTC)

Outlook time stamp

In sent items, is the time stamp on outlook, the time the email went into the sent items folder or the time it went to the outbox folder, if it took a while to send because either the file was large or you had connection problems? 92.27.242.127 (talk) 10:57, 16 July 2016 (UTC)

Mouse cursor

While I was using MS Word and MS Excel, I realised that:

  1. MS Word: A mouse cursor appears when you are at the left side of/in the sheet, changing its view, allowing you to select the line... How do I change this?
  2. MS Excel: How do I change the plus lookalike cursor/icon of the mouse cursor that displays while I’m in MS Excel?

Apostle (talk) 18:30, 16 July 2016 (UTC)

2. No, You need for this: or the whole sheet is protected. --Hans Haase (有问题吗) 19:45, 17 July 2016 (UTC)
Its a video. I'll watch it some other time... -- Apostle (talk) 05:00, 18 July 2016 (UTC)

Mouse cursor/icon making software sought

What is highly praised in this day and age? Paid/Free? -- Apostle (talk) 18:30, 16 July 2016 (UTC)

One thing to realize is that it's not just one mouse pointer, but usually an entire suite. A normal pointer, a working pointer, a pointer for when hovering over a selectable link, a pointer for when over a text entry field, etc. So, I find it easier to search for premade pointer suites. In particular, Windows has failed to keep up with larger resolution screens by making larger pointers. Thus, the stock pointers that come with Windows now are too tiny to see. (You can use pointer trails, but those get annoying.) StuRat (talk) 19:42, 19 July 2016 (UTC)
Thank you O Smart One. -- Apostle (talk) 06:12, 20 July 2016 (UTC)
Btw, try AniFX i.e. similar to IcoFX. -- Apostle (talk) 18:19, 20 July 2016 (UTC)

July 17

My SPI OLED Module has no CS pin

I tried to connect a 0.96" 128x64 monochrome OLED display to my Arduino Nano.

http://www.electrodragon.com/product/0-96-12864-oled-display-iicspi/

They look like the ones on this page even though their backs are a little different.

I purchased each of both types. The I2C OLED worked as advertised but the I2C/SPI one has some issues.

The OLED shown on the webpage has 7 pins while mine has only 6 pins. Mine has all the pins except for CS (Chip Select).

My I2C/SPI module has soldering pads in its back that says "I2C" and "SPI" and the SPI pads are shortened by its manufacturer. Unless I desolder them, its I2C interface is disabled. It does not provide any clue regarding its I2C address. Either 0x78 or 0x7A, I guess. I'll probably never use its I2C mode.

My I2C module with an address of 0x78, has a 470k resistor soldered between the 0x78 bonding pads in is back side. This resistor can be detached and soldered on the 0x7A pads. It's painful to work on these itsy-bitsy SMT parts. But at least I can still manage to have two of them on the same I2C bus.

Does it mean my I2C/SPI OLED module will always have its SS (select) line set at low?

Does it mean I can never use two of these I2C/SPI modules on the same SPI bus? -- Toytoy (talk) 03:13, 17 July 2016 (UTC)

By the way, these OLED modules are not defective. They were custom made for their particular customers. That's why there are so many similar OLED modules on the market with similar but different circuit board designs. They were built for special purposes and unshipped productions went to the hobbyists. They are badly documented at best. Some of them have no documentation at all. -- Toytoy (talk) 04:07, 17 July 2016 (UTC)
I daresay you can use GPIO pins on the Arduino as outgoing CS pins, and AND these (with external glue logic) to each display's drop of the I2C bus (which is effectively how chip-select would work if the displays themselves had a CS pin). In any event, the I2C address space is so small you can resort to bruteforcing to figure out what address a specific part has. -- Finlay McWalter··–·Talk 21:26, 17 July 2016 (UTC)

Files that I have deleted and thrown in the Trash-can, only to empty the trash-can afterwards, is it possible to recover those files ?

Files that I have deleted and thrown in the Trash-can, only to empty the trash-can afterwards, is it possible to recover those files ? If so, how ? Tell me step by step if you're willing.

Thank you. Krikkert7 (talk) 06:51, 17 July 2016 (UTC)

The first place to look is on your backup media, but if that is somehow not available then you might like to try something from our List of data recovery software. Before you do anything else, stop saving any files to the drive from which the files have been deleted because these might overwrite the space where your deleted files were stored. There is no guarantee that the deleted files will still be there, but PC Advisor recommends Disk Digger and PCWorld recommends Recuva. Dbfirs 08:02, 17 July 2016 (UTC)
Note that stop saving any files implies stop using any application that tacitly saves files; for example, your browser saves history and cache... —Tamfang (talk) 07:01, 20 July 2016 (UTC)

Thank you Krikkert7 (talk) 12:15, 17 July 2016 (UTC)

It depends how badly you want the data back. For critical data, there are professional data recovery services but they are not cheap. Much more expensive than the cost of a backup disk. If you do want to go down that route, stop using the computer immediately. Vespine (talk) 00:39, 18 July 2016 (UTC)

Binary Calculation

While doing binary calculation such as : 11001+110*101011 Can we use BODMAS rule here or not? — Preceding unsigned comment added by Sahil shrestha (talkcontribs) 13:57, 17 July 2016 (UTC)

In the absence of any indication of a left-to-right convention, one would assume that algebraic order of operations (BODMAS) is appropriate. For clarity, brackets (parentheses) should be shown when the calculation is not obviously algebraic. Dbfirs 15:54, 17 July 2016 (UTC)
In mathematics, the normal order of operations always applies when arithmetic operators are applied to numbers. It doesn't matter how the numbers are written (decimal, binary, hex, or balanced ternary for that matter). However this is the computing reference desk. If you're asking whether the order of operations applies in some particular programming language, you'll need to specify which language you're using. Almost all programming languages use the BODMAS rule too, although there are exceptions like APL and Smalltalk. CodeTalker (talk) 16:26, 17 July 2016 (UTC)
It doesn't even matter if + and * are actual addition and multiplication rather than, say, bitwise OR and bitwise AND (I don't know enough math but I'm sure deep down + and OR and similarly * and AND, are one and the same operation, or are special instances of some third operation. It isn't called "sum of products" and "product of sums" for nothing!) Asmrulz (talk) 23:32, 17 July 2016 (UTC)

Current existence of InterNIC

Does anyone know about InterNIC? Please go to the discussion at Talk:InterNIC#What happened to it after 1998? --Quest for Truth (talk) 17:48, 17 July 2016 (UTC)

The root name server that formerly operated under the name "InterNIC" is now operated by Verisign. It probably lives in a giant data center in McLean, Virginia, with the rest of Verisign's (and their friends') internet backbone hardware.
I doubt that very much of the server infrastructure has been physically located at 333 Ravenswood Avenue since the 1980s, so this transition was probably mostly an administrative transfer. One could probably make the case that the major backbone operators are, de facto, the new root-level arbiters, anyway, so it's almost moot to discuss who controls the root name servers and routing tables. As far as InterNIC itself, it always was, and still remains, a registered service mark (not an organization). The mark is assigned to the U.S. Department of Commerce (a part of the United States Government) and is administered by ICANN, which is a special organization that still exists and has special operational involvement with the basic technology and policy infrastructure that most people call "The" Internet. Nimur (talk) 20:28, 17 July 2016 (UTC)
Nitpick: as the article says, most of the root "servers" are actually a bunch of servers spread around the globe using anycast. --71.110.8.102 (talk) 06:04, 18 July 2016 (UTC)
Thank you, User:71.110.8.102, for your perfectly correct observation. The technical implementation of the domain name resolution system has become quite a bit more complicated nowadays compared to the "vanilla" description in textbooks and the original RFCs. I trust that our technically-apt enthusiast readers can dive deeper into those details. Appropriate starting points for anyone new to the topic are our articles on the Domain Name System, the Internet Protocol, and new users just need to be aware that this technology is very complex and has evolved considerably over the decades.
Nimur (talk) 15:34, 18 July 2016 (UTC)

Thanks all of you! Can I say that the organization ceased to exist in 1998? I'm adding the article to Category:Organizations disestablished in 1998.--Quest for Truth (talk) 16:19, 20 July 2016 (UTC)

July 18

Another Arduino Problem, kindly help

It has just two or three, or may be one more grounded terminal (for negative D.C. output) but several positive terminals, so many that they need numbers to be told apart. But the project I'm working on needs only one positive output (for a certain anode in the project) and lots of, literally dozens of negatives, for cathodes that had to be fed negative DC. Of course, I can't feed all the cathodes from a single Arduino source, since the whole meaning of using the programmable micro-controller is to provide different cathodes at different times. Any solution, please ? 203.134.197.96 (talk) 00:28, 18 July 2016 (UTC)

you tie the anode to Vcc and each of the cathodes (is this a common-anode 7-segment?) to an I/O pin (through a series resistor.) Then pull the pin low to light the segment and high to make it go out. Asmrulz (talk) 08:17, 18 July 2016 (UTC)
you can use a single current-limiting resistor at the anode if you make sure only one segment is lit at any instant (multiplexing.) Asmrulz (talk) 08:19, 18 July 2016 (UTC)
The OP might also want to consider an open-collector inverter (such as a 7406) between the Arduino output and the load - driving the LEDs (assuming that's what the load is) directly off the outputs may not work if the outputs can't sink enough current. There are dedicated 7-segment display drivers (such as the 7447) that the OP might want to consider as well. Tevildo (talk) 18:56, 18 July 2016 (UTC)
There are many approaches. The general concepts you need to wrap your head around here is current source and current sink. This might also be a perfect opportunity to use and learn about transistors. You can buy a handful of little BC338 for literally a few bucks and learn how to use them to source or sink current. Vespine (talk) 00:35, 19 July 2016 (UTC)

On some pages about Head Mounted Displays, you see a list of games suported by some brand of HMD, what does this mean?

On some pages about Head Mounted Displays, you see a list of games suported by some brand of HMD, what does this mean? Can't we just open a game while using HMD?201.79.79.49 (talk) 01:36, 18 July 2016 (UTC)

Assuming the general technology hasn't changed much... I used to work on device drivers for an HMD. I also made sure that the HMD worked with whatever version of Doom was released at the time to show it as a compatible game. While you can display the video of any game inside the helmet, translating the movement of the helmet to controls inside the game is not always seamless. So, it is probable that the list of supported games are those that work as expected. Other games might not work as expected. For example, you turn you head, but it doesn't register as a turn in the game. 209.149.113.4 (talk) 12:06, 18 July 2016 (UTC)
While you can display the video of any game inside the helmet, I own a HTC Vive and you can't just display the video of any game inside the HMD, there isn't a native "mirror monitor mode". To mirror your desktop into the HMD you need to buy some extra software. I've bought it and it's cheap but personally I think it's a but of an oversight that there isn't a native mode that supports monitor mirroring. Vespine (talk) 00:16, 19 July 2016 (UTC)

Artifacts of apps

Does installing and uninstalling apps on a smartphone affect the phone's memory? In other words, when an app is uninstalled, does the available memory go back to what it was before it was installed (assuming no other changes, of course)? Or are little artifacts of the app left in the memory permanently, like little bits of debris?    → Michael J    14:42, 18 July 2016 (UTC)

It probably depends on OS. Ruslik_Zero 20:35, 18 July 2016 (UTC)
And obviously depends on the app. If you are talking strictly about the "app" it self, then theoretically the app "model" is supposed to keep the app like a "self contained" little bubble. The app is not supposed to "interfere" with other parts of the phone except through APIs. Removing the APP should be quite clean, (cleaner than a PC anyway). However any application CAN write things to your storage, for example a camera app can save photos to your photo roll. Those photos might remain after you delete the camera app, that's just an example, there's all sorts of data an app can write out which you might not be able to guarantee is removed when you delete the app. Vespine (talk) 00:12, 19 July 2016 (UTC)

Availability of security updates for Windows 7

Has Microsoft stated for how long security updates will continue to be available for Windows 7? Thanks. --134.242.92.97 (talk) 22:55, 18 July 2016 (UTC)

A Web search for your question gives this page as the first result. --71.110.8.102 (talk) 03:44, 19 July 2016 (UTC)

July 19

Can Ipad Pro 12.9" watch netflix?

I wanted to buy a Ipad Pro 12.9" to watch netflix but when I looked into the wiki article about ipad it did not mention whether ipad pro 12.9" can watch netflix. I rather not spend $969 just to find out that it cannot watch netflix. Has anyone managed to watch netflix on it yet? 175.45.116.99 (talk) 00:43, 19 July 2016 (UTC)

Any iOS device, including the iPad, should be able to watch Netflix streams using the Netflix app. iOS is a platform officially supported by Netflix. (You need a Netflix account of course.) --71.110.8.102 (talk) 03:43, 19 July 2016 (UTC)
I see. But can I watch Netflix using the split screen function where I can watch Netflix on one half of the screen while playing Pokemon Go on the other half of the screen? 175.45.116.99 (talk) 06:43, 19 July 2016 (UTC)
Netflix is definitely available on iPad, including iPad Pro. It works perfectly well in full-screen mode, and the Netflix software app has limited support for some of the newest iOS multitasking features.
Presently, (as of Netflix 8.9.1 (9)) for iOS, split screen is not supported by Netflix's software application. The iPad Pro hardware is powerful enough to smoothly display other video applications in split-screen or in Picture-in-Picture mode, and you can multitask (including using the camera or playing Pokemon Go) while watching videos from other apps (including web-based videos in Safari). Here's official documentation: Multitasking on your iPad....
But Netflix will pause video playback when you enable any multitasking features. As far as I am aware, Netflix requires full-screen playback on all other competitive mobile platforms, too. (I really suspect this mandate for full-screen-only playback is a bizarre artifact of their content license agreements, but I have little actual evidence to support that suspicion).
Perhaps in the long term, Netflix will make software changes to permit split-screen multitasking. If you are a Netflix subscriber, you can provide feedback to Netflix's customer support team to politely ask them to expedite this feature, via their in-application feedback system.
For now, when I need to watch Netflix while playing Pokemon Go, I have to use two iPad Pros, which can be a bit of a handful.
Nimur (talk) 13:02, 19 July 2016 (UTC)

Folders in Eclipse

Hi, I have a lot of Java projects in Eclipse, and I want to organize them into categories, using "folders" (maybe there's other name for this in Eclipse?). For example, in one folder I'll put Java projects that I've created for homework, in other folder I'll put Java projects that I've created just for fun, etc. How to create such folders in Eclipse? Thanks in advance!31.154.81.50 (talk) 07:10, 19 July 2016 (UTC)

Development environment for remote text-only linux system

I have custom software that runs on a remote linux-based system without X windows enabled. Most of the time when I am doing development I mirror the software on a local machine and use a natural development environment for whatever I am working on. However, it isn't always practical to run everything locally. So sometimes I end up either repeatedly A) editing locally, saving, copying to the remote machine, then running, or B) editing on the remote machine using a basic text editor. Either approach works, but isn't wonderful. In the first case, I have extra steps copying over files constantly and in the second case I'm stuck with a basic editor without syntax highlighting or other helpful aids. What are some tools to make this easier? I'm thinking an editor that allows files to be opened and saved directly over SFTP might just be a good start. I'm supporting three different programming languages right now, so something more general would probably be best (perhaps with plugins that aid specific languages). Dragons flight (talk) 13:19, 19 July 2016 (UTC)

Just to throw out some options you might not have already covered:
  • GNU Screen permits session persistence and terminal multi-tasking (on the remote server). It is incredibly powerful, but it has the user-friendliness you would expect from a mishmash of emacs- and bash-. GNU Screen is not for novices; novices will invariably confuse themselves amidst the numerous invisible backgrounded contexts.
  • rsync lets you efficiently synchronize data and documents between machines, transferring only the changed parts of large files (if bandwidth is an issue). It can work over ssh, so it is as secure as the rest of your system.
  • sshfs works very well (on some versions of *nix, *dows, and other *OSes...). It makes any ssh server appear to be a local file system. It has a great user-experience if and only if you have a very fast, low-latency connection to your server
  • Lots of text editors support sftp out of the box. Kate (text editor) works on KDE and has fantastic and intuitive shell integration, too. This simple editor is the core of my home-made integrated development environment when I need to work on "other-than-default" languages and operating-systems, because it's very lightweight and can easily be modified or scripted. Basic syntax highlighting for "unsupported languages" can be easily added: it is trivial to create a brand-new syntax highlighting file and you can make that process as simple or as complicated as you wish, from providing a custom, simple list of keywords that should be colorized, all the way up to whatever level of language parsing theory you want to learn and apply. Shell integration is easy, so you can write a script to, say, rsync local data to the server and then execute it remotely - all from inside your text editor. (If you have a Sun keyboard, by default, the special Enter key on the numeric keypad turns any line of any text-file into a bash shell! This feature can be emulated on some other operating systems and keyboards - use with caution!) You can muck with the command line and the external tools plugin. Similar text editors, like gEdit, provide comparable feature sets - it boils down to user preference.
  • If you have not yet mastered the art of ssh public key exchange (for initiating secure, password-free ssh sessions), learn how to use ssh-keygen (or your *nix system's equivalent, if you're using a different SSL tool set). Here's one tutorial from Berkeley, SSH Public Key Authentication HOWTO (or check your system's man page). Next, be sure you're comfortable with remote command-execution using ssh: this lets you seamlessly blend local- and remote- execution in scripts that execute on your development machine.
A lot of people use fad-of-the-week tools to deploy scripts and executable code to remote programs; but the old tried-and-true methods of source-code management like git and svn tend to be more reliable.
Nimur (talk) 13:36, 19 July 2016 (UTC)
Thanks Nimur, that's very useful. Dragons flight (talk) 15:01, 19 July 2016 (UTC)
In addition to all of Nimur's suggestions:
  • Some people advocate tmux rather than GNU Screen
  • Both emacs and VIM have pretty nice text-mode features, including syntax highlighting, and neither is remotely basic. Personally I use emacs in text mode (emacs -nw) even when editing locally, as I find its X11 interface rather naff. You you can just plain ssh to the remote machine and run either of them and have a nice enough experience.
  • Emacs has tramp mode, and vim has netrw mode, which work like the feature of Kate Nimur describes.
  • If the "remote" machine is still pretty local (such as a server in a chilly server room downstairs, that you'd rather not spend the day beside) you can forward X clients from it (to your desktop's display) with ssh -X. That requires that the remote machine have X libraries, but not that it have a graphics card, display, or a running X server. I can't say I'd recommend running a heavy IDE like Eclipse or Netbeans over that, even on a decent LAN or CAN, but needs must when the devil vomits into your kettle.
In general, ssh and rsync are really powerful - combined they are the giant Japanese robot of productivity. -- Finlay McWalter··–·Talk 14:14, 19 July 2016 (UTC)
Server is about 9500 km away. Dragons flight (talk) 15:01, 19 July 2016 (UTC)

July 20

Partitions and Disk Images

I have two computers that I would like to upgrade from windows 7 and windows 8.1 to windows 10, then, having already made disk images of them, and a restoral disk for the 8.1, return them to 7 & 8.1, and restore the C drives on each to the state on the disk images I intend to create. My understanding is that these hardrives will now be registered with MS for an upgrade to 10 any time in the future, so basically I will stay running 7 & 8.1 for now, but be able to upgrade at my leisure, in say a year or 3?

The computer running 8.1 has only a C Drive, 500GB, of which only about 120GB are used. The Computer running 7 is more Complicated. It has a 100GB SSD "C" and a 1T HD, "D", noth almost full. The question is, if I purchase a 1TB external drive and partition it into a 750 and a 250GB pair, will I be able to create the 100GB disk image in the 250GB partition and the 500GB disk image into the 750GB partition without inherent problems?

And when I create the disk image of the 100GB SSD "c" will it not drag along the 1TB HD "D" unless I click on "D" to do so?

Finally, since I will be restoring the disk images as soon as I have downloaded WIN 10 and then restored WIN 7 ^ 8.1, is there a preferred free software to do this efficiently?

Thanks. μηδείς (talk) 05:37, 20 July 2016 (UTC)

I used Clonezilla to clone a single disk image of a working PC to a USB drive, and then used that cloned image to recreate the same working OS on two identical PCs - so not exactly what you're proposing, but the same method. Despite it appearing rather difficult to use, providing you are methodical and follow the prompts, it works very well. And the answers to your questions: clonezilla only copies used parts of the drive, so you will be able to get your 500GB drive into 750 very easily, ditto 100GB into the 250. Similarly, it will only clone the C drive if that's what you tell it to do.--Phil Holmes (talk) 11:30, 20 July 2016 (UTC)

Virtual memory without hardware support

I have read that it is possible (or I might I have read that it is possible to have virtual memory without an MMU). Is this true? — Melab±1 06:17, 20 July 2016 (UTC)

Virtual memory can be implemented (slowly) with software. It is not effective. Software is commonly used to enhance virtual memory, not replace the MMU. The real question should be: "Why would you try to implement virtual memory without an MMU?" 47.49.128.58 (talk) 12:43, 20 July 2016 (UTC)
I think that's absolutely correct - software can simulate anything the hardware MMU can do, by application of the Turing equivalence principle. A pertinent follow-up question to this statement might be, "how (in)efficiently could that software be implemented?" That is a much trickier question and it would be architecture-specific; it would also entail a lot of subtle analysis and benchmarking. Software that emulates virtual memory would profoundly affect memory access patterns, which may wreak havoc on any heuristics about spatial locality that are built into the cache hardware. So, a VM simulator that might superficially appear to add only a small fixed performance overhead may actually yield a terrifically bad performance slow-down due to cache thrashing, for example.
As noted above, MMU hardware is widely available, and if the application requires virtual memory, it ought to be running on appropriate hardware with appropriate system memory management software. Nimur (talk) 13:04, 20 July 2016 (UTC)
See to see someone who emulated a 32-bit ARM CPU and MMU on an 8-bit microcontroller and then booted Linux on it. --Guy Macon (talk) 16:32, 20 July 2016 (UTC)
To implement VM without an MMU basically requires emulating every memory reference instruction. Every instruction that touches memory would have to call a function to determine if that memory location is resident or needs to be loaded from disk. To do this, you'd need to either emulate EVERY instruction, or do some kind of compilation-like step that converts the code into different code, replacing every memory reference with a function call. Either way, the performance will be abysmal compared to running the native code with an MMU to handle nonresident pages, probably many times slower. So while it's possible, using an MMU is vastly preferable. That's why MMUs were invented in the first place. CodeTalker (talk) 16:46, 20 July 2016 (UTC)
A real-world example is the Z-machine used for Infocom interactive fiction. The original implementations (on the Apple II, Commodore 64, etc.) used software paging to load ~128K of code and text into machines with <64K of RAM. I remember reading somewhere that they used 256-byte pages, but I can't find a source for that now. According to this post they used LRU eviction. -- BenRG (talk) 17:38, 20 July 2016 (UTC)
You might want to look at bank switching. This is normally used when the amount of physical RAM is larger than the address bus, but it can also be used for virtual memory. However, bank switching is usually co-operative, bank switching on each context switch is likely to be expensive. LongHairedFop (talk) 18:01, 20 July 2016 (UTC)
There's also overlays. DOS programs used them a lot. Asmrulz (talk) 18:14, 20 July 2016 (UTC)
Categories: