Comments for Class csc4110

Test post   [Dr_Weeks]   Jan 9, 2017 at 20:57:35
This is a simple system to post questions and comments related to class. If you are enrolled in this class, you can log in with your first name followed by an underscore, then your last initial. Then use your official e-mail address (before the @) as your password. The password will not be displayed. For example, suppose your name is John Doe, and your account name is jdoe4@student.gsu.edu. Then you would log in as "John_D" with a password of "jdoe4".

Software to practice Digital Logic   [Zane_B]   Jan 19, 2017 at 13:18:58
Logisim is a free, and open sourced, program used for digital logic. You can set up circuits via AND gates and etc, and eventually build upon components for things like your own Latch setups.

http://www.cburch.com/logisim/

Possible Questions for Exam 1   [Enrico_E]   Feb 11, 2017 at 20:59:21
Q1: What is a brownout and how can you prevent it?

A: A brownout is when not enough power was provided to a chip because the chip required more power at a certain time resulting in the chip to stop working temporarily.

To solve you'd use a capacity which stores small amount of electricity to maintain the voltage level.

Q2: What is a bus fight and how can you solve this problem?

A: A bus fight is when one output tries to drive HIGH or LOW and another output tries to drive in the opposite direction of first output.

You solve a bus fight by implementing open collector outputs.


Extra And-gate or tri-state buffer   [Zachary_S]   Feb 19, 2017 at 18:22:18
I'm running into a problem on my project that requires a 2-input and-gate, nand-gate, or other simple logic to help control a power problem I'm having with one component. I don't want to spend $5 to ship a $0.30 chip. Might anyone have a spare 3+v logic chip they could spare till the end of the semester?

Re: Extra And-gate or tri-state buffer   [Dr_Weeks]   Feb 20, 2017 at 08:41:05
There may be a part in the lab that would work for your project. Talk to the TA.

LAB 3, what to turn in   [Zachary_S]   Mar 4, 2017 at 17:57:40
Professor,

In Lab 3 it says under the What to Turn In section:

"Include a screen-capture of the simulator's screen, when there is something to see."

For lab 3 we generated at least one line of text per every second of operation. When I include these 1300+ lines of Serial.print() calls in my lab report, this makes my report 36 pages long.

I lost 18 points for not turning in two copies of my code on the first lab because I thought it would be common sense to not waste ink on such a thing.

I would like to avoid using common sense at the expense of my grade this lab. Do you have any guidance on whether we should include all of the data generated for Lab 3 as part of our report?

Re: LAB 3, what to turn in   [Dr_Weeks]   Mar 5, 2017 at 10:35:27
Good point: turning in page after page of temperature readings is excessive. I am changing the instructions on the lab to address this (look for the text in italics). Essentially, do a screen capture of the serial interface window, and show some representative lines of output.

Talk to me on Tuesday a bit about losing points on lab 1. I may want to see the assignment.

no office hours this week   [Dr_Weeks]   Mar 6, 2017 at 12:14:43
I will not be able to hold office hours on Wednesday, March 8. If you need to talk to me, try to do so right after class, or post to the class comments system (this page).

Lab 3 Due Date   [Shaniece_P]   Mar 7, 2017 at 10:01:51
Just to confirm, lab 3 is now due on the 9th?

Re: Lab 3 Due Date   [Dr_Weeks]   Mar 8, 2017 at 11:49:50
Yes.

Lab 3 Question 5   [Shaniece_P]   Mar 8, 2017 at 21:34:30
Dr. Weeks,
I'm not really understanding question 5. Are we supposed to write code to display an error indicating how far above or below the target temperature the probe is reading? And how are the groups stored?

Re: Lab 3 Question 5   [Dr_Weeks]   Mar 9, 2017 at 08:24:42
You do not display an error message. You should have the temperatures that you measured, and you know what the ideal temperature is. So you can produce an error signal showing, for each temperature reading, how much it is different from the desired (ideal) temperature.

Think about heating a room. You might feel cold, and then turn on the heat, and still feel cold for a while because it has not had enough time to heat the room. Then it might get too hot, and stay that way for a while. So you have a period of time where the room is colder than you'd like (group 1), and a time where the room is warmer than you'd like (group 2). How you store this information is up to you, though it could be simply done with arrays.

feedback comments   [Dr_Weeks]   Mar 16, 2017 at 12:37:04
By now you should have received feedback comments about the project update. Please note that the number after "Comments had an average complexity score of..." is NOT a grade. It's a rough measure of how good the comments that you left are, and the higher it is, the better.

Lab 3 due date   [Shreyans_S]   Mar 21, 2017 at 18:44:39
Just a reminder: Our lab 3 late due date is on Thursday, March 23.

Lab 4: Salting Algorithm   [Zachary_S]   Mar 26, 2017 at 17:11:18
Per one of the suggestions in the article, I am using the JBCrypt crypto-package. It uses it's own salt-generating algorithm and will not accept salt strings I'm generating. Because of this, I'm not seeing a way to incorporate a Cryptographically Secure PRNG (SecureRandom) into the algorithm. How do you want me to address this so I accomplish the graded criteria of the Lab?

Adding to previous comment   [Zachary_S]   Mar 26, 2017 at 19:08:06
Two amendments to my previous comment:

1. The exception that was being generated did not give enough details to make the problem immediately clear. I solved the problem by providing a salt string that was a precise length.

2. None of that will be done in Java because we need all of this to happen server side, so all the problems I encountered are a non-issue.

For anyone that is having problems with lab 4: the PHP solution is surprisingly simple (6 lines of code). The Node solution looks pretty straight-forward, too.


Re: Lab 4: Salting Algorithm   [Dr_Weeks]   Mar 27, 2017 at 10:51:21
I'm glad that it worked out.

Another option is to use a Bash script on server-side. That's what I did.

Lenovo Yoga Tablet USB Debugging   [Fergus_K]   Apr 4, 2017 at 17:26:08
If anyone else is having trouble connecting the Lenovo Yoga Tablet for USB Debugging, here's how I was able to do it:

1. Connect the tablet to your computer with the USB cable.

2. Open the USB options screen on the tablet. This will either automatically pop up when you connect the tablet, or you can go into the notifications bar and tap the "Touch for other USB options" item.

3. Tap the "Built-in CD-ROM" option. This will mount the tablet as a CD-ROM driver on your computer.

4. Navigate to the newly mounted drive on your computer and run the .exe file to install the USB drivers.

5. Now the tablet should appear as an available device when you run your app in Android Studio. If not, make sure you enable USB debugging on the device per the tutorial: https://developer.android.com/training/basics/firstapp/running-app.html#RealDevice

Hope this helps!


Reference for pre   [Fergus_K]   Apr 4, 2017 at 17:33:04
In the interest of proper references, here's the forum comment that lead me to that solution:
https://forums.lenovo.com/t5/Android-Yoga-Series-Tablets/ADB-interface-driver-for-Yoga-Tab-8-B6000/m-p/1572794/highlight/true#M3709

Reference for pre   [Fergus_K]   Apr 4, 2017 at 17:38:50
In the interest of proper references, here's the forum comment that lead me to that solution:
https://forums.lenovo.com/t5/Android-Yoga-Series-Tablets/ADB-interface-driver-for-Yoga-Tab-8-B6000/m-p/1572794/highlight/true#M3709

Re: Reference for pre   [Dr_Weeks]   Apr 5, 2017 at 08:24:52
Thanks for posting that.

study materials   [Zachary_S]   Apr 8, 2017 at 13:09:13
I'm building practice exam materials for the final. I'll finish it by Tuesday. http://codd.cs.gsu.edu/~zshoults1/CSC4110_Final/

Lab 4   [Shaniece_P]   Apr 9, 2017 at 23:54:05
So could we do the lab with PHP as a web application as opposed to android?
I'm having a hard time working with Android and I do have a Codd account.

Re: Lab 4   [Dr_Weeks]   Apr 10, 2017 at 12:57:22
See if the TA can help you with the lab.

Who owns Codd?

Lab 4   [Shaniece_P]   Apr 10, 2017 at 13:45:46
I think the CS department owns it?

Who presents when   [Dr_Weeks]   Apr 11, 2017 at 17:34:41
You will present your final project videos starting on Tuesday, April 18. There are three possible dates: April 18, April 20, and April 25 (the last day starts at 10:45 a.m.).

Presentations are scheduled based on priority. If your group has a low priority (11 through 17), then you will present on April 18. If your group has medium priority, expect to present on April 20. If your group has a high priority (1, 3, or 4), then you can present any day that you like (though I will assume April 25 unless you tell me otherwise).

Here are groups, listed by priority:
1 Rewel
1 Yaovi
3 Zachary, Emily
4 Nicholas
5 Fergus
5 JeroldS
5 Shaniece
8 Khadija
8 Kyle
10 GeraldG and Daniel
11 Jared, Shamari
12 Shreyans, Carlos, Siddik (Abubakar)
13 Abdul-Latif
14 William, Samir, Joshua, Khushick
15 Brandon, Chung
15 Enrico, Forrest
16 Rasha
17 Zane

Exam Questions   [Zane_B]   Apr 12, 2017 at 21:08:17
[Chapter 3]
1. How does the Microprocessor distinguish RAM from ROM?
A. By splitting the on-board address space, E.I. splitting 64k into 32 for each, having the first bit indicate if ROM or RAM.

2. Provide a Diagram of CPU and some other component that has I/O connections: Which pin can interrupt the cpu? (letter 4 or 5 connections A-E)
A. Looking for the IRQ connection, which ever Letter is assigned to that connection.

3. How would you allow a MicroController to write to ROM?
A. You cannot write to ROM.

[Chapter 4]
4. Assembly Language instructions that includes JCOND, JUMP, ADD, etc. With values of R1 and R2 given before hand: What is the outcome of R1?
A. Depends on the code given - could include a jump after a MOVE R1, 133 (which gives R1 the value of 133) to the end, or could have a series of JCOND that mixes up the result.

5. What is the Shared-Data problem?
A. When an interrupt changes data before the previous task was completed (screwing up the task via inaccurate data).

6. Code written in C: Does the following code have a shared-data problem?:
A. Depends on the code provided.


Exam Questions (2)   [Zane_B]   Apr 12, 2017 at 21:18:39
7. How do you solve Shared-Data problem?
A. Disable interrupts when needed.

[Chapter 5]
8. What is the problem with Round-Robin?
A. Services that are lower in priority may not get serviced as needed, or possibly at all.

9. What is the problem with adding interrupts with Round-Robin?
A. Makes priorities pointless.

10. What is the problem with Function Queue Scheduling?
A. Starvation - lower priorities may not run as often as needed, or possibly at all.

[Chapter 6]
11. What are the 3 main types of tasks?
A. Ready; Blocked; Running

12. What are the requirements to be a Re-entrant task?
A. Use variables in an atomic way only; any functions called must also be re-entrant; hardware is only used an atomic way.

13. What is deadlock?
A. When the system cannot progress because tasks are waiting for one another to finish to proceed - yet no task is finishing.

Project Presentations   [Shaniece_P]   Apr 19, 2017 at 10:48:27
Dr. Weeks,
When will I be presenting? I was originally going to present tomorrow, but it seems like I've been bumped back to the 25th, but I just wanted to make sure.
Should I expect to be presenting tomorrow or the 25th?

Re: Project Presentations   [Dr_Weeks]   Apr 20, 2017 at 08:06:27
As it says above, you should expect to present on April 20.

Re: Project Presentations   [Dr_Weeks]   Apr 20, 2017 at 08:20:14
I updated the http://carmaux.cs.gsu.edu/~mweeks/csc4110/pres_schedule.html to include a column for the "Who presents when" information from above.

Radio Shack   [Nicholas_A]   Apr 21, 2017 at 18:49:52
Hey everyone, if anyone is interested in getting any electrical components like we used in class. Radio Shack is going out of business so they have tons of stuff for really cheap. If there is one near you I would recommend checking it out.